Linux初学者です。
プログラミングなども初心者なので、暖かい目で見ていただけると嬉しいです。
Linuxについて勉強している際、以下のような記述を見ました。
bash
1$ exec 9<>/dev/tty <&9 >&9
これはどうやら、execコマンドによってfd9番で端末を開き、標準入出力をこのfd9番と差し替えるという意味のようでした。
私は、端末のfd9番に標準入出力が流れ込むようなイメージをしていたのですが、これは正しいのでしょうか?
また、
bash
1exec 9<>/dev/tty
という部分について、
execは実行する、つまるところexecコマンドを実行したプロセスの子プロセスとして引数のものを実行する、/dev/ttyは端末を表していると解釈したのですが(この解釈が正しいかも少し不安です)、<>という箇所がよくわかりません。
一瞬、SQLなどで見られるような非等価演算子なのか・・・?と思いましたが、ここでは不適切に思えます。
これは一体どういう意味なのでしょうか?
###################################################################
私からの質問をまとめさせて頂きますと、
bash
1exec 9<>/dev/tty <&9 >&9
という記述について
①端末のfd9に標準入出力が流れ込んでいくイメージであっているのか?
②execによって子プロセスとして引数のものを実行する、/dev/ttyは端末である、といった解釈は合っているのか?
③<>という記述は一体どういうことを表しているのか?
となります。
基礎なところでつまづいてしまっていますが、どなたかご教授いただけないでしょうか?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/01/27 14:45 編集
2016/01/28 01:55
2016/01/28 06:45