created: 2016-10-07 24:00, tags: shell,

shell でコマンド引数に - を入れる意味

cat の man を眺めている時に気付いたので書いておく。

cat の man には - (ハイフン) をコマンド引数に書く使い方があると紹介されていたので、使ってみた所確かに存在した。

$ cat f - g

という使い方を紹介しているが、f (ファイル) - (標準入力) g (ファイル) という事らしい。

用途を適当にでっちあげるとこんな感じ。

$ echo 'aieee' > file1
$ echo 'nandeee' > file2
$ echo 'ninja' | cat file1 - file2
aieee
ninja
nandeee

こういう事らしい。

ちなみに grep でも - (ハイフン) を入れる事で標準入力 + 標準入力の検索が出来た。

- (ハイフン) の挙動はコマンドに依存してるみたいだけど結構便利かも知れない。