Text 终端命令';查找';从txt文件读取
我想从目录中查找所有.html文件,但忽略一些文件Text 终端命令';查找';从txt文件读取,text,terminal,find,command,Text,Terminal,Find,Command,我想从目录中查找所有.html文件,但忽略一些文件 $ find /Volumes/WORKSPACE/MyProject/ -name '*.html' ! -name 'MyFile.html' 上面的命令仅忽略MyFile.html。但是我有一个要忽略的文件列表,并希望在单个txt文件中维护忽略文件 MyFile1.html MyFile1.html MyFile2.html MyFile2.html 上面是txt文件的内容 我想有一个单一的txt文件,并使用查找命令中的tx
$ find /Volumes/WORKSPACE/MyProject/ -name '*.html' ! -name 'MyFile.html'
上面的命令仅忽略MyFile.html。但是我有一个要忽略的文件列表,并希望在单个txt文件中维护忽略文件
MyFile1.html
MyFile1.html
MyFile2.html
MyFile2.html
上面是txt文件的内容
我想有一个单一的txt文件,并使用查找命令中的txt文件维护要忽略的文件列表
请给我一些建议。提前感谢。您必须从文件中构建类似于数组的内容,然后在
查找
语法中使用它。i、 e
#!/bin/bash
while IFS= read -r file; do
arr+=(-name "$file" -o)
done < list_of_filenames_to_omit.txt
#remove trailing -o
unset arr[$((${#arr[@]}-1))]
if ((${#arr[@]}!=0)); then
find /Volumes/WORKSPACE/MyProject/ -name '*.html' ! \( "${arr[@]}" \)
else
#list_of_filenames_to_omit.txt is empty
find /Volumes/WORKSPACE/MyProject/ -name '*.html'
fi
#/bin/bash
而IFS=read-r文件;做
arr+=(-name“$file”-o)
完成<文件名列表\u至\u省略.txt
#移除尾随-o
未设置arr[$(${arr[@]}-1))]
如果(${arr[@]}!=0);然后
查找/Volumes/WORKSPACE/MyProject/-name'*.html'\(“${arr[@]}”\)
其他的
#文件名列表\u到\u omit.txt为空
查找/Volumes/WORKSPACE/MyProject/-name'*.html'
fi