質問: ubuntu linux:特定の時間の間にファイルを見つけますか? soと呼ばれる find/grepを使用して特定の時間帯にファイルを検索する )が見つかりましたこれに基づいて、unix seが grepコマンドを呼び出して、テキスト文字列を含むファイルを見つけて移動します 。find . -type f -mtime -20 | grep -v -e " \(0[012345]\|18\|19\|2[0123]\)" | xargs mv -t daytime/ しかし、それはすべてのファイルを移動しています。 ubuntuを使用していることは違いますか?私がやりたいのは、午前6時から午後6時までのすべてのファイルを別のディレクトリに移動することだけです。任意の提案をいただければ幸いです。
回答: 実際、findにはすでにこの機能があります。find . -newermt "2013-01-01 00:00:00" ! -newermt "2013-01-02 00:00:00" マンページから:-newerxy reference compares the timestamp of the current file with reference. the reference argument is normally the name of a file (and one of its timestamps is used for the comparison) but it may also be a string describing an absolute time. x and y are placeholders for other letters, and these letters select which time belonging to how reference is used for the comparison. a the access time of the file reference b the birth time of the file reference c the inode status change time of reference m the modification time of the file reference t reference is interpreted directly as a time some combinations are invalid; for example, it is invalid for x to be t. some combinations are not implemented on all systems; for example b is not supported on all systems. if an invalid or unsupported combination of xy is specified, a fatal error results. time specifications are interpreted as for the argu‐ ment to the -d option of gnu date. if you try to use the birth time of a reference file, and the birth time cannot be deter‐ mined, a fatal error message results. if you specify a test which refers to the birth time of files being examined, this test will fail for any files where the birth time is unknown.