人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

UNIXシェルでは、コンソールへの出力に標準出力とエラー出力の2つがありますが,例えばsshのパスワードプロンプト等,どちらにも該当しない出力があります.
質問は2つです。
1. このような出力は,どのAPIでコーディングされているのでしょうか?
2. bash等のシェルで,この出力をファイルにリダイレクトする方法はありますか?

2.について,具体的には MacOSX の DarwinPorts(MacPorts) の port コマンドで,-d オプションで出力されるログをリダイレクトする方法を知りたいのです.
2>&1 等,エラー出力をリダイレクトする方法は知っています.
宜しくお願いします.

●質問者: syd_syd
●カテゴリ:コンピュータ
✍キーワード:API bash DarwinPorts MacOSX MacPorts
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● hujikojp
●100ポイント ベストアンサー

1. ssh_read_passphreadで"/dev/tty" を直接 openしています。

2. shellだけでは redirectするのはむりでしょう。scriptコマンドなどを使えばログはとれると思います。

ちなみに DarwinPortsの -dで出てくるデバッグログは標準エラー出力にでているようなので、

$ port info vim 2>& log

で redirectできました。

MacPorts 1.320です。

◎質問者からの返答

ありがとうございます。scriptコマンドというのは初めて知りました。

1. /dev/ttyを直接ですか、なるほど。

2.については、 2>&1 >file.txt とやればエラー出力もfile.txtに出力されると勘違いしていました:-P

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ