私はUnixのスクリプトの助けを借りていくつかのファイルを変更しています。私はファイルの変更時間を変更したくない。 touch
コマンドを使用しましたが、使用しませんでした。他の方法はありますか?ファイルを変更した後にファイルの変更時刻を復元する方法はありますか?
ファイルの前回の変更時刻が必要です。出来ますか?
私はUnixのスクリプトの助けを借りていくつかのファイルを変更しています。私はファイルの変更時間を変更したくない。 touch
コマンドを使用しましたが、使用しませんでした。他の方法はありますか?ファイルを変更した後にファイルの変更時刻を復元する方法はありますか?
ファイルの前回の変更時刻が必要です。出来ますか?
タッチが行く方法です。あなたの構文は正しいですか?
[01:35:42 [email protected]~]# touch -t 201107262235.34 foo
[01:35:49 [email protected]~]# stat foo
File: `foo'
Size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: ca20h/51744d Inode: 642445 Links: 1
Access: (0600/-rw-------) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2011-07-26 22:35:34.000000000 -0400
Modify: 2011-07-26 22:35:34.000000000 -0400
Change: 2011-07-27 01:35:49.000000000 -0400
[01:35:50 [email protected]~]#
キャプチャファイル変更する前に、更新時刻:
touch -t "$oldFileTime" theFileThatIsBeingChanged
バックアップ:
# savedate=$(stat -c %Y filename.ext)
oldFileTime=`find theFileThatIsBeingChanged -maxdepth 0 -printf "%Ty%Tm%Td%TH%TM.%.2TS"`
があなたの変更を行い、その後、時間をリセットするためにタッチを使用
復元:
# touch -d @${savedate} filename.ext
変更する前に以前の変更時刻を保存しておく必要があります。ちょうど「タッチ」は現在の時刻に設定します。あなたは以下の答えで述べられているようなタイムスタンプでタッチを使う必要があります。 – jman
-1。あなたの質問の見出しによれば、ファイルの変更時刻を変更する必要があると言われています。あなたの記述には、修正時間を同じにしておきたいという声があります。 – Vijay