2016-10-09 6 views
0

ターミナルでリダイレクトを使用した後にどのような基本的なシステムコールが発生するのか知りたい。シェルでシステムコールの順序が "<" and ">"(リダイレクト)

と言うと、<を使用すると、open()を使用していた可能性がありますが、close()を使用するのはいつですか?全体の操作後または情報を取得した直後。

>を使用する場合は、exec()またはfolk()を使用して保存しますか?または待つ()? open()がそれらの前か後ろにあるでしょうか?

これを実装する方法の詳細を知りたいだけです。いくつかの例を挙げてそれを詳細に記述することができれば完璧です。もし私がどこでそれらをチェックすることができるか教えていただけたら、それもOKです。ありがとう!

答えて

0

straceまたは同様のツールを使用してシステムコールをトレースできます。

シェルのソースを読み取ることができます。たとえば、bashです。 make_cmd.c(make_redirection関数)とredir.cは、リダイレクトに関連する(唯一のものではない)ようです。

関連する問題