我有大约1000个文件(png),需要将它们移动到相应的目录及其子目录中。Bash:读取文件并移入子目录
我确实有26个目录(A - Z),每个目录下面还有完整的字母表A-Z。文件名长度为6个字符/数字,并有一个png扩展名,例如例如AH2BC0.png
我需要将文件AH2BC0.png移动到目录A中,并在该目录内移动到子目录H中,例如A-> H-> AH2BC0.png。
我创建了以下脚本,它是不是真的如预期工作:
#!/bin/bash
ls >LISTE.txt
for i in LISTE.txt; do
a=$(cat $i | cut -b 1 | tr '[:lower:]' '[:upper:]')
b=$(cat $i | cut -b 2 | tr '[:lower:]' '[:upper:]')
mkdir -p $a/$b
cat $i | xargs mv $a/$b
rm $i
done
问题是)则不会创建子目录和b)的文件不会移动。对脚本有任何建议或更好的想法?
感谢
PS:我想这是显而易见的,它相当长的一段年前就是我创建的任何的bash脚本或编码,所以请多多包涵。 PSS:在Mac OSX上的bash工作3.2
非常感谢!这绝对是信息,我很惊讶我犯了多少错误。 – AtaDas 2013-04-27 21:28:05
如果你喜欢我的回答,我会欢迎upvote :-) – 2013-04-27 21:30:39
想upvote,但不能。我确实得到了我需要15点声望才能做到的信息。抱歉。 – AtaDas 2013-04-27 21:45:37