Cam*_*oft 11 linux filesystems bash command-line
如何在执行文件操作时排除文件夹,即cp等.
我目前使用通配符*将文件操作应用于所有,但我需要排除一个单个文件夹.
我实际想要使用的命令是chown
更改目录中所有文件的所有者,但我需要排除一个子目录.
Ign*_*ams 18
如果您正在使用bash并启用extglob,shopt -s extglob
那么您可以使用它!(<pattern>)
来排除给定的模式.
find dir_to_start -name dir_to_exclude -prune -o -print0 | xargs -0 chown owner
find dir_to_start -not -name "file_to_exclude" -print0 | xargs -0 chown owner
Run Code Online (Sandbox Code Playgroud)
for file in *; do
if [ $file != "file_I_dont_want_to_chown" ]
then
chown -R Camsoft $file
fi
done
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
30225 次 |
最近记录: |