UbuntuでBASHを使用して一連のファイルとフォルダーをコピーしようとしています。ファイルは、フラッシュドライブに追加された順序でファイルを読み取るデジタルフォトフレームで処理されるため、アルファベット順にコピーすることが重要です。私が発見したことから、Nautilusはiノード番号に基づいてそれらをコピーするため、額縁上で順序が狂ってしまいます。
私が行った検索から、次のコマンドを思いつきました。
for i in "$(find * -type f -print0 | sort)"; do cp -v "$i" "/media/PicFrame/$i"; done
これにより、ファイル名が長すぎるというエラーが発生します。BASHは、すべてのファイル名が「\n」で区切られたファイルを作成しようとしているようです。引用符の一部を削除しようとしましたが、ファイル名の一部をコピーしようとすると、いくつかの「統計できない」エラーが発生します(多くの場合、スペースが含まれているため)。
これを機能させる方法について何かアイデアはありますか?私は他の方法も受け入れていますが、これを、写真を変更するときに毎月実行できる単一のコマンド/スクリプトにしたいと思っています。(私はこれをWindowsで行ってきましたが、現在Ubuntuですべてを実行しようとしています。私は約2年間行ったり来たりしています。)