- 论坛徽章:
- 0
|
本帖最后由 abiao00000 于 2012-03-22 12:39 编辑
:wink: 各位大侠好,我想写个脚本,把当前目录下的包含子目录名称的文件移动到相应的子目录中去,折腾了半天还是没搞定,求大虾指导,谢谢了。比如我当前目录下有一堆文本文件和一堆非文本文件名称都以xxx.*,yyy.*开头,其中xxx.txt文件第一行内容第一列包含字符"111",yyy.txt文件第一行包含"222"。执行脚本之后,先根据xxx.txt和yyy.txt第一行第一列内容建立两个子目录111和222,然后将对应的xxx.*文件全部移动到111目录下,将相应的yyy.*文件全部移动到222目录下。我写了一点点也有基本思路,但是整不出来:
#!/bin/bash
mkdir `head -1 *.txt|awk '{print $1}'` #根据xxx.txt和yyy.txt的第一行第一列字符建立两个文件夹111和222
rm -rf "==>"
var_dir=`ll |grep ^d|awk '{print $9}'` #建立的文件夹名称111和222赋予变量var_dir
var_file=ls* #将文件名赋予变量var_file
if(head -1 xxx.txt|awk '{print $1}'=vardir) #判断*.txt文件第一行第一列名称与文件夹名是否一致
do
mv xxx.* 111 #移动相应文件到对应的文件夹中
fi |
|