名前がダッシュで始まる空のファイルを作成するには? [コピー]

名前がダッシュで始まる空のファイルを作成するには? [コピー]

unixという空のファイルをどのように作成できますか-stuff?名前がで始まるという意味です-。試してみましたがtouch -stuff成功しませんでした。

答え1

通常、ほとんどのユーティリティには-。ほとんどのユーティリティには、特別なオプションを指定してオプションではなく引数を指定する機能があります--。これらのユーティリティは、--選択できる他のパラメータがないことを意味します。したがって、あなたの場合はtouch -- -stuff

多くのユーティリティによる一般規則の詳細については、以下を参照してください。セクション12:「実質的な規則」~の基本定義ボリューム~のシングル Unix 仕様

空のファイルを生成するもう1つの方法は、次のようにシェルのリダイレクト演算子を使用することです> -stuff

答え2

返品

touch ./-stuff

現在の状況:「一般的な」ファイル名の場合、現在のディレクトリ(./)は暗黙的であるため不要です。ただし、これを明示的に指定できます./(通常の状況では重複)。このように、引数は-オプションで始まらずファイル名で解析されます。

答え3

以下も使用できます。

echo -n > -stuff

答え4

あなたの質問は具体的に生成に関連しているのでファイルのtouch主な目的は、ファイルのタイムスタンプを「接触」することです。
2番目の側面は、touch指定されたファイルが存在しない場合は空のファイルを生成することです。
もちろん、これはそうすることを意味します。いいえ常に空のファイルを作成します。

空のファイルで終わるようにするには、>リダイレクト演算子(他の回答で述べたように)を使用するか、cp -- /dev/null -a

touch一度に複数のファイルを作成したり、タイムスタンプのみを変更したりできます。
>そしてcp一度に1つのファイルしか処理できません。

関連情報