私のフォルダにファイルが多すぎます。私は私のinodeをできるだけ早く解放したいので、私は次のように試しました。
find ./EcoBackup/* -name '*.*' > FilesBackupName.txt
bash: /usr/bin/find: Argument list too long
tar -cv -T FilesBackupName.txt -f tarball.tar
引数リストが長すぎると失敗せずにtarの速度をどのように向上できますか?
成功しますか?
find /foot/bar/ -name '*.*' -exec mv -t tarball.tar {} +
find /foot/bar/ -name '*.*' -print0 | xargs -0 tar -t tarball.tar
同じ種類のファイルを削除できますか?
答え1
これは、bashが実際に一致するすべてのファイルにアスタリスクを拡張して、コマンドラインに引数が多すぎるために発生します。したがって、削除した後は問題ありません(例:ここ)
find ./EcoBackup/ -name '*.*' > FilesBackupName.txt
そして、あなたが提案した解決策もうまくいくでしょう。
このオプションを使用すると、コマンドを使用して--remove-files
一度にファイルを削除できます。tar
tar --remove-files -cv -T FilesBackupName.txt -f tarball.tar