
私にこの木があるとしましょう。
$ tree
.
├── 1
│ └── notes
├── 2
│ └── notes
├── 3
└── 4
4 directories, 2 files
notes
既存のファイルを編集し、&でnotes
ファイルを作成および編集したいです。3
4
を使用すると、&のみオンにnvim */notes
なり1/notes
ます。2/notes
実行すると、touch */notes
新しいファイルは生成されません。notes
現在、新しいファイルを作成して編集する唯一の方法はfor
ループを使用することですfor i in $(ls); do touch $i/notes; done
。しかし、これはかなり長く、入力するのが難しいです。
新しいファイルを作成して編集するより迅速で簡単な方法はありますか?単一のコマンドで実行できる場合、またはvimが組み込まれている場合はより良いでしょう。
答え1
この特別なケースでは、シェルの{...}
構文を使用して代替リストを処理できます。
$ nvim {1,2,3,4}/notes
より便利には数字なので、範囲に渡すことができます。これは、数十または数百の数字がある場合に便利です(連続数字であると仮定)。
$ nvim {1..4}/notes
これは非常に一般的な解決策ではなく、ディレクトリが実際に存在するかどうかを実際に確認したり、既存のディレクトリを入力として使用したりしません。これはうまくいきませんが...特定の場合に便利です。
for
それ以外はループよりも良いことを考えることはできません。