我试图将某些文件从一个目录复制到另一个目录.使用此命令
find "$HOME" -name '*.txt' -type f -print0 | xargs -0 cp -t $HOME/newdir
我收到一条警告信
cp: ‘/home/me/newdir/logfile.txt’ and ‘/home/me/newdir/logfile.txt’
are the same file
如何避免此警告讯息?
解决方法
问题是您尝试将文件复制到其自身.您可以通过从find命令的结果中排除目标目录来避免这一点:
find "$HOME" -name '*.txt' -type f -not -path "$HOME/newdir/*" -print0 | xargs -0 cp -t "$HOME/newdir"