我有一个包含. m4b文件名(包括源路径)的文本文件。文件名包含空格和引号,如:
/文件/源/安德Game.m4b
/文件/源/安德Shadow.m4b
/file/source/Speaker for the Dead.m4b
我正在尝试使用xargs命令将文件内容管道到相同的目的地cp audiobooks:
cat /path/to/file/filenames.txt | xargs cp {} /destination/folder/ ;
我第一次运行这个命令时,它返回xargs:未终止的引号
然后在文件名/file/source/"Ender's Game.m4b"然后运行命令,它返回:cp:/file/source/Ender's Game。M4b不是目录
使用zsh和macOS Ventura 13.0.1
克服引号痛苦的一种可能方法是将换行符转换为ascii空,然后使用xargs -0
:
cat /path/to/file/filenames.txt | tr 'n' ' 00' | xargs -0 -I{} cp {} /destination/folder/