转自:http://zhidao.baidu.com/question/286638309.html
你这个问题主要是mv的用法了,我简单说一下:
1. mv可以把多个文件移动到一个文件夹(目录)里面,比如:有a b c三个文件,一个目录d,用下面命令就能将a b c移动到d中
$ mv a b c d
需要注意的是,目录d必须在最后面,而且它前面不能再出现其他目录
2. 也可以使用带选项的mv命令,把多个文件移动到一个目录中,如
$ mv a b c -t d
$ mv -t d a b c
其中,-t后面紧接着的就是要移动到的目录,并且不能有多个目录出现
3. 如果出现了多个目录,比如下面的命令
$ mv -t adir a -t bdir b
mv: multiple target directories specified
会出现上面的警告,且只执行了前面正确的那部分,即只是将a移动到了adir,后面的没执行
4。如果你的文件和目录名称有一定的关系,你的问题可以通过脚本来解决,当然,脚本的具体内容也要视具体情况而定
假设有文件a b c,希望将a移动到adir,将b移动到bdir,将c移动到cdir,那么就可以这样来做
写一个简单shell脚本:move.sh
# FileName move.sh
#!/bin/bash
mv $1 "$1dir"
$ chmod +x move.sh
然后,
$ find . -type f | xargs -n 1 ./move.sh
执行完毕之后,就发现
$ tree
.
|-- adir
| `-- a
|-- bdir
| `-- b
即实现了将a移动到adir,b移动到bdir,c移动到cdir了。
所以,总得来说,你的具体问题还要具体分析才好。当然,如果你的情况正是我上面说的,那么,就用这种方法就OK了
希望对你有所帮助:)