「touch」コマンドを使うと、空のファイルを作成したり ファイルのタイムスタンプ(最終更新日時やアクセス日時)を変更することができます。
本来はタイムスタンプを更新するためのコマンドですが、空のファイルをサクッと作成したいときにもよく使われます。
以下から Linuxコマンド「touch」の具体的な使い方を解説していきます。
目次
「touch」コマンドの基本
「touch」は以下のようにファイル名を指定して使います。
touch ファイル名
空のファイルを作成する
例えば、以下のように入力すると「file1.txt」が作成できます。
touch file1.txt
その後、lsコマンドを入力してみましょう。これで作成したファイルを確認することができました。
ls
以上のように、指定したファイルが存在しない場合は、その名前で空のファイルが作成されます。
ファイルのタイムスタンプを更新する
次に、すでに作成した「file1.txt」のファイルスタンプを更新してみましょう。
さきほどと同じようにファイルを指定してコマンドを実行します。
touch file1.txt
次に、ls コマンドで確認してみましょう。file1.txt のタイムスタンプが現在の日時に更新されていることが確認できました。
ls -l
このようにすでに存在しているファイル名を指定した場合は、タイムスタンプを現在の日時に更新することができます。
ここまでが「touch」コマンドの基本!
「touch」コマンドの応用
「touch」コマンドの理解をさらに深めたい方は以下もご覧ください。
-a オプション
-a
オプションをつけると、アクセス日時のみを更新することができます。
file1.txt のアクセス日時を更新するコマンド例
touch -a file1.txt
-c(–no-create)オプション
通常、指定されたファイルが存在しない場合はその名前で新しいファイルを作成しますが、-c
(または --no-create
)オプションをつけると、ファイルの作成を行いません。
実行例
touch -c file1.txt
-d(–date=日付)オプション
オプションで -d 日付
(または --date=日付
)を指定すると、指定したファイルと同じ日時にタイムスタンプを更新することができます。
file1.txt のタイムスタンプを2020年1月1日12時00分に更新するコマンド例
touch --date="2020/1/1 12:00" file1.txt
-m オプション
-m
オプションをつけると、最終更新日時のみを更新することができます。
file1.txt の最終更新日時を更新するコマンド例
touch -m file1.txt
-r(–reference=ファイル名)オプション
オプションで -r ファイル名
(または --reference=ファイル名
)を指定すると、指定したファイルと同じ日時にタイムスタンプを更新することができます。
file1.txt のタイムスタンプを file2.txt と同じ日時に更新するコマンド例
touch -r file2.txt file1.txt
-t オプション
オプションで -t 日時
を指定すると、タイムスタンプを指定した日時に変更することができます。
file1.txt のタイムスタンプを2020年1月1日12時00分30秒に更新するコマンド例
touch -t 202001011200.30 file1.txt
複数のオプションを組み合わせた例
file1.txt のアクセス日時を2020年1月1日12時00分30秒に更新するコマンド例
touch -a -t 202001011200.30 file1.txt
まとめ
以上、Linuxコマンド「touch」の使い方でした!
ここまでの内容をまとめておきます。
- 「touch」コマンドで指定した名前で空のファイルを作成できる。
- すでに存在しているファイルを指定した場合は、ファイルのタイムスタンプを変更できる。
- オプションを使って 変更するタイムスタンプの日時を指定できる。