|
发表于 2005-5-28 11:42:41
|
显示全部楼层
你的意思是只想移动当前文件夹的子目录 但是不想移动当前文件夹的文件是吧
那简单用下面的命令就OK了
mv $(ls -l | grep ^d | awk -F " " '{print $9}') 目标文件夹
awk 命令中的-F是指定分隔符 这里指定的是空格
'{print $9}' 这个参考的意思是 把输入的文件的每一行 先用-F指定的符号分(空格)隔开 并把分隔的数据按先后顺序分别存放到$1 到$9 的变量里
$0是所有变量的值,没有分隔的值
$1是文件类型是读写权限(这里相对ls -l 的输出而言),
$2是inode连接数
...
$9是文件名或是文件夹名了或是设备名了
整个命令就是先输出详细的子目录和文件的信息,然后用grep提取出目录,awk报表生成命令提取文件名字, 然后用$()命令捕获输出的数据 再用mv 以后不用说了吧 |
|