そのため、このサイトのおかげで、現在作成された日付のすべてのファイルを別のディレクトリに移動する方法を見つけましたが、理解できないエラーがあります。
Thu Aug 31; 15:05:02; marton;~/Свалени ; $ find . -newermt 20170829 -not -newermt 20180101 -print0 | xargs -0 mv -t /backup/desktop/books/Python/ML-demos/
mv: inter-device move failed: ‘.’ to ‘/backup/desktop/books/Python/ML-demos/.’; unable to remove target: Invalid argument
Thu Aug 31; 15:06:19; marton;~/Свалени ; $
これが問題になりますか?このエラーをどのように解決できますか?
答え1
find
コマンドが現在の作業ディレクトリを見つけて.
渡すため、エラーが発生しますmv
。
ディレクトリ以外のファイルのみを移動する場合は、次のコマンド-type f
に追加してください。find
find . -type f ...(as before)...
これにより、ディレクトリを含むディレクトリがフィルタリングされます.
。
完全に削除することもできますxargs
。
find . -type f -newermt 20170829 -not -newermt 20180101 \
-exec mv -t /backup/desktop/books/Python/ML-demos/ {} +
答え2
.
つまり、現在のディレクトリを移動しようとしています。コマンド-mindepth
に追加して削除できます。find
まず、配管なしで試して、目的のxargs
結果が得られたことを確認してください。