案例描述
当前目录下有a、b、c、d四个文件,在当前目录下新建new目录,并且将a、b、c三个文件移动到new中
解决方案
mkdir new
find -maxdepth 1 \! -name d \! -name . -exec mv {} new \;
代码说明
-maxdepth 1
指定查询深度为当前,不进入次级目录查找。
如果同时有多个目录时,这个参数蛮好用的。
\!
“非”的意思
name
find的参数,匹配文件名,可以使用正则表达式
-exec
我也不太懂这个命令
自己看这个吧
{}
似乎代表find查询到的内容
\;
不太清楚,但是必须要有“;”符号
\和最后一个字符见必须有空格间隔