shell命令
1. 移动文件
找到包含特定内容的文件,并将与这些文件名有相同前缀的所有文件移动到其他目录
grep -rl "pad" random_network_test/20210715200759/error_case_to_solve/ | awk -F"/" '{print $NF}' | awk -F'.' '{print $1"*"}' | xargs -I {} find random_network_test/20210715200759/error_case_to_solve/ -name {} | xargs -I {} mv {} random_network_test/20210715200759/looked_case/error_case_pad/config/
说明:
1. grep -rl "pad" random_network_test/20210715200759/error_case_to_solve/
查找包含pad的文件(-l选项)
2. awk -F"/" '{print $NF}' | awk -F'.' '{print $1"*"}'
得到文件的前缀
3. xargs -I {} find random_network_test/20210715200759/error_case_to_solve/ -name {}
查找相同前缀的文件
(注意:awk的输出不能用ls, cp, mv等命令,
不然会报mv: cannot stat 'xxx': No such file or directory的错误)
4. xargs -I {} mv {} random_network_test/20210715200759/looked_case/error_case_pad/config/
移动文件