我正在尝试在 Ubuntu 中使用 BASH 复制一系列文件和文件夹。重要的是要按字母顺序复制文件,因为它们将进入一个数码相框,该相框按照它们添加到闪存驱动器的顺序读取文件。根据我的发现,Nautilus 根据 inode 编号复制它们,因此它们最终在相框上无序。
从我所做的搜索中,我想出了以下命令:
for i in "$(find * -type f -print0 | sort)"; do cp -v "$i" "/media/PicFrame/$i"; done
这会导致文件名太长的错误。看来 BASH 正在尝试创建一个文件,每个文件名都用“\n”分隔。我尝试删除一些引号,但是在尝试复制文件名时会导致几个“无法统计”错误(因为其中很多都有空格)。
关于如何使这项工作的任何想法?我对其他方法持开放态度,但我真的希望这是一个单一的命令/脚本,我可以在每个月更换图片时运行它。(我一直在 Windows 中这样做,但现在我正在尝试在 Ubuntu 中做所有事情。我已经来回大约两年了。)