catコマンドの属性

catコマンドの属性

簡単な質問です。ファイルを作成できますか?欲しいところ&使用注文する&パイプを使用しないそしてその場所は私が現在持っている別の場所です。 (これは修正ができたらいいです)

答え1

$ cat > location/i/want/theFileImCreating

cat実際にファイルは生成されません。単に標準出力に書き込む。上記のコマンドでは、出力リダイレクト(>)(シェルで設定)はファイルを生成します(または既存のファイルを消去します)。

デフォルトでは、リダイレクト(>)はターゲットがある場合はターゲットを削除します。これを防ぎたいなら、set -o noclobberこの人はあなたの友達です。

ファイルをコンテンツで埋めたくない場合は、touch新しい空のファイルが作成されます(または既存のファイルのタイムスタンプが更新されます)。

新しいファイル(対応するパスを含む)を厳密に「作成」するには、ヘルパーシェル関数/スクリプトが役に立ちます。

fcreat(){
  while (( "$#" )); do
   [ ! -f "$1" ] && {
      mkdir -p "$(dirname "$1")";
      touch "$1";  
   }; shift
  done
}

使用法:

$ fcreat location1/i/want/file1 location2/i/want/file2
$ tree
$ tree
.
├── location1
│   └── i
│       └── want
│           └── file1
└── location2
    └── i
        └── want
            └── file2

作る:UNIXの専門家になったのか、それともスペルの実力を失ったのかわかりません。

関連情報