« 大文字と小文字 | トップページ | シェルの実行速度比較 »

2008年9月19日 (金)

Yash 2 その 57: コマンドリダイレクト

Yash の独自機能の一つとしてコマンドリダイレクトを実装した。

コマンドの入出力を、ファイルの代わりに他のコマンドの入出力にリダイレクトするというもの。例えば以下のように書くと、cat の入力を echo の出力にリダイレクトする。

cat <(echo hello)

Bash や zsh のコマンド置換と見掛けは同じだが、yash のコマンドリダイレクトはあくまでもリダイレクトなので、コマンド置換のようにファイル名をコマンドの引数として渡すことはしない。

他のシェルでも使われている記法に別な機能を与えるのは混乱の元でもあるが、記法と機能の一貫性を重視してこのようにした。Yash では、< または > で始まるトークンはすべてリダイレクトを表し、コマンド名やその引数とはならない。Bash や zsh のコマンド置換はこの規則に当て嵌まらない。

|

« 大文字と小文字 | トップページ | シェルの実行速度比較 »

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/169172/42527052

この記事へのトラックバック一覧です: Yash 2 その 57: コマンドリダイレクト:

« 大文字と小文字 | トップページ | シェルの実行速度比較 »