1

mysqlこれを行うことができるので、私はいつもコマンドラインユーティリティが少し驚くべきことに気づきました:

gzcat dumpfile.sql.gz | mysql -u <user> -p <options>

パスワードのmysql入力を求められます。これで、stdininmysqlがリダイレクトされます。ダンプファイルからパスワードを読み取ることが期待されます。代わりに、それはどういうわけかバイパスstdinしてターミナルに直行します。ssh同じようなことをします。

これはある種の魔法だと思いますが/dev/tty/dev/ptyこの明らかな魔法について適切な説明をいただければ幸いです:)(そして、なぜこれらのプログラムがWindowsを含むあらゆるプラットフォームでそれを実行できるのか)。

4

1 に答える 1

3

ご想像のとおり、次の/dev/ttyように指定された を使用しています。

各プロセスの [ /dev/ttyis] は、そのプロセスのプロセス グループに関連付けられている制御端末 (存在する場合) の同義語です。これは、出力がどのようにリダイレクトされても、端末にメッセージを書き込んだり端末からデータを読み取ったりすることを確実にしたいプログラムまたはシェル プロシージャに役立ちます。また、型付けされた出力が必要で、現在どの端末が使用されているかを調べるのが面倒な場合に、出力用のファイルの名前を要求するプログラムにも使用できます。

それ以上の本当の「魔法」はありません。

リンク

于 2012-09-23T01:42:13.717 に答える