特定のサイズのファイルを作成する方法はすでに知っています。 Linuxでは。指定されたサイズのファイルを作成すると、多くの場合に役立ちます。たとえば、新しいファイルサーバーを展開した後、アップロード制限、最大アップロードサイズ、ファイルのダウンロード速度などを確認できます。このような場合、特定のサイズのファイルを作成して、ファイルサーバーでテストできます。 "mktemp"という名前の専用コマンドラインツールもあります 一時ファイルとディレクトリを作成するために利用できます。 mktempコマンドは、一時ファイルまたはディレクトリを安全に作成し、その名前を出力します。すべてのファイルとディレクトリは、システムの一時ディレクトリ、つまり / tmpに保存されます。 。したがって、手動でクリーンアップする必要はありません。システムを再起動すると、一時ファイルはなくなります。
例を含むmktempコマンドチュートリアル
MktempはGNUcoreutilsの一部です パッケージ。したがって、インストールを気にしないでください。ここで、いくつかの実用的な例を見ていきます。
新しい一時ファイルを作成するには、次のコマンドを実行します。
$ mktemp
以下のような出力が表示されます:
/tmp/tmp.U0C3cgGFpk
mktempコマンドを使用して一時ファイルを作成する
出力にあるように、ランダムな名前の新しい一時ファイル "tmp.U0C3cgGFpk" /tmpディレクトリに作成されます。このファイルは単なる空のファイルです。
指定したサフィックスを使用して一時ファイルを作成することもできます。次のコマンドは、拡張子が「.txt」の一時ファイルを作成します。
$ mktemp --suffix ".txt" /tmp/tmp.sux7uKNgIA.txt
一時ディレクトリはどうですか?はい、それも可能です!一時ディレクトリを作成するには、 -dを使用します オプション。
$ mktemp -d
これにより、/tmpフォルダにランダムな空のディレクトリが作成されます。
出力例:
/tmp/tmp.PE7tDnm4uN
mktempコマンドを使用して一時ディレクトリを作成します
すべてのファイルはu+ rwで作成されます 権限、および u + rwxのディレクトリ 、マイナスumask制限。つまり、結果のファイルには、現在のユーザーに対する読み取りおよび書き込み権限がありますが、グループまたは他のユーザーに対する権限はありません。また、結果のディレクトリには、現在のユーザーに対する読み取り、書き込み、および実行可能権限がありますが、グループやその他のユーザーに対する権限はありません。
「ls」コマンドを使用してファイルのアクセス許可を確認できます:
$ ls -al /tmp/tmp.U0C3cgGFpk -rw------- 1 sk sk 0 May 14 13:20 /tmp/tmp.U0C3cgGFpk
「ls」コマンドを使用してディレクトリのアクセス許可を確認します:
$ ls -ld /tmp/tmp.PE7tDnm4uN drwx------ 2 sk sk 4096 May 14 13:25 /tmp/tmp.PE7tDnm4uN
Linuxでファイルとディレクトリのアクセス許可を確認する
推奨される読み物:
- Linuxでテキストファイルからディレクトリを作成する方法
mktempコマンドを使用してカスタム名で一時ファイルまたはディレクトリを作成する
すでに述べたように、すべてのファイルとディレクトリはランダムなファイル名で作成されます。カスタム名で一時ファイルまたはディレクトリを作成することもできます。これを行うには、少なくとも3つの連続する「X」を追加するだけです。 以下のようにファイル名の最後にあります。
$ mktemp ostechnixXXX ostechnixq70
同様に、ディレクトリを作成するには、次のコマンドを実行します。
$ mktemp -d ostechnixXXX ostechnixcBO
カスタム名を選択した場合、ファイル/ディレクトリは/tmpの場所ではなく現在の作業ディレクトリに作成されることに注意してください。 。この場合、手動でクリーンアップする必要があります。
また、お気づきかもしれませんが、ファイル名のXはランダムな文字に置き換えられています。ただし、任意のサフィックスを追加できます。
たとえば、ファイル名の最後に「ブログ」を追加したいと思います。したがって、私のコマンドは次のようになります。
$ mktemp ostechnixXXX --suffix=blog ostechnixZuZblog
これで、ファイル名の最後に「blog」という接尾辞が付きます。
ファイルやディレクトリを作成したくない場合は、以下のようにドライランを実行するだけです。
$ mktemp -u /tmp/tmp.oK4N4U6rDG
ヘルプが必要な場合は、次を実行してください:
$ mktemp --help
なぜ実際にmktempが必要なのですか?
「touchfilename」コマンドを使用して空のファイルを簡単に作成できるのに、なぜ「mktemp」が必要なのか不思議に思うかもしれません。 mktempコマンドは、主にランダムな名前の一時ファイル/ディレクトリを作成するために使用されます。 。したがって、名前をわざわざ理解する必要はありません。 mktempは名前をランダム化するため、名前の衝突は発生しません。また、mktempは、アクセス許可600(rw)のファイルとアクセス許可700(rwx)のディレクトリを安全に作成するため、他のユーザーはアクセスできません。詳細については、マニュアルページを確認してください。
$ man mktemp