これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、または MAC OS オンライン エミュレーターなどの複数の無料オンライン ワークステーションの XNUMX つを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド ホースです。
プログラム:
NAME
ホース - BSD ネットワーク パイプのクライアント側
ネットパイプ 4.2
SYNOPSIS
ホース hostname ポート (- の|- アウト|--エラー|--fd n|-奴隷|--ネットスレーブ|--netslave1|--netslave2)
[-詳細] [--unix] [--ローカルポート ポート] [--localhost addr] [- リトライ n] [- 遅れ n]
[- シャットダウン [r|w][a] ] [--noreuseaddr] [-[i][o][e][#3[,4[,5...]]][s][v][u]][-p
ローカルポート] [-h ローカルホスト] command 引数
DESCRIPTION
ホース ネットワーク上でパイプの機能を提供しようとします。 それは次のように動作します
サーバーとクライアント接続のクライアント側。 と一緒に使用する場合 蛇口(1) として機能できます
の交換
tar -cf - 。 | rsh その他 "cd destdir; tar -xf -"
蛇口 & ホース 非対話型で簡単にアクセスできない場合に特に便利です。
宛先のマシン。
OPTIONS
ホース BSD ソケットを作成し、 --ローカルポート オプションが使用されている場合、それをポートにバインドします
直後に指定した番号(またはサービス名)。 もし --localhost も
指定されている場合、その引数はバインド先のローカル アドレスです。 ( --localhost でのみ役に立ちます
複数の IP アドレスを持つマシン。)
ホース 次に、外部マシンに接続しようとします hostname 外国港あり ポート。
成功した場合 ホース ソケットを stdin、stdout、stderr、および/または任意のファイルにリダイレクトします
による記述子 - の - アウト --エラー --fd n フラグ。 ホース 自動的に閉まるものもある
接続の未使用の半分をダウンする - の が指定されている、または指定されている場合のみ - アウト および
--エラー が指定されています。 を参照してください。 - シャットダウン 詳細については、オプションを参照してください。
ホース その後 exec(2)さ command 引数.
しかし、 -奴隷 旗が変わる ホース 原始的な種類の Telnet に変換します。 の command is
無視されました。 その代わり、 ホース ループに入り、標準入力からソケットにバイトをコピーします。
ソケットから標準出力へのバイト。 これは実際には Telnet よりも便利です。
Telnet はバイト ストリームの解釈を実行しようとするため、通常は邪魔になります。
ホース バイトをいじらずに渡すだけです。
--ネットスレーブ* オプションは、 -奴隷 テーマ。 一方 -奴隷 続行します
もう一方の EOF が発生した後でも、一方向にデータを転送します。 --ネットスレーブ
バリアントは、ソケット全体をより積極的に閉じます。 ソケットを閉じる前に、
独自のバッファ内にすでに存在するデータをフラッシュしようとします。 -奴隷 を実行します shutdown(2)
一方向で EOF が発生した場合のシステム コールですが、 --ネットスレーブ バリアントはそうではありません
一部のネットワークデーモンが混乱するためです。
--ネットスレーブ いずれかの方向で EOF が発生すると接続を閉じます。
--netslave1 標準入力の読み取り中に EOF が発生すると接続を閉じます。 どれでも
ソケット上で読み取られていないデータは無視されます。 ソケット上で EOF に遭遇しただけの場合は、
stdin からの読み取りを続けます。
--netslave2 からの読み取り中に EOF が発生すると接続を閉じます。
ソケット。 標準入力で読み取られていないデータは無視されます。 標準入力で EOF に遭遇しただけの場合、
ソケットからの読み取りを継続します。 このモードは、一部の Web サーバーで便利です。
-詳細 フラグはそれを指定します ホース 接続するホストに関する情報を出力する必要があります
に。 この情報には、数値のホスト アドレス、ホスト名、外部ポートが含まれます。
数字。
--unix フラグは、 ポート インターネットのポート番号やサービス名ではありません。
ただし、これは UNIX ドメイン ソケットのファイル名です。 このオプションは次のようにシミュレートできます。
-ユニックス- 接続するホスト名として使用するか、名前を変更します。 ホース 〜へのプログラム うほせ.
- リトライ n ユーザーがそれを指定できるようにします ホース を再試行する必要があります 接続する(2) 呼びかける n
何度も(あるいは永遠に) n はマイナスです)。 - 遅れ n 遅延する秒数を指定します
トライの間。
- シャットダウン は XNUMX つの動作を制御するために使用されます。 最初のセットは「r」と
「w」フラグ。 「r」が存在する場合、 ホース 接続の半分を閉じて、
読み取り専用ソケット。 子どもが書こうとすると失敗します。 リモート接続の場合
読み取りを試みると、ソケットが閉じられていると認識されます。 代わりに「w」が存在する場合、
ホース 接続の残りの半分を閉じて書き込み専用ソケットにします。 もし
子が読み取りを試みると、ソケットが閉じられていると認識されます。 リモート接続の場合
書き込もうとすると失敗します。 デフォルトの動作では、両方の半分を開いたままにしますが、
接続の半分のシャットダウンは、次の特定の組み合わせによって自動的に行われます。
- の, - アウト, --エラー フラグ。 自動魔法の動作を抑制するには、次のように使用できます
(それぞれ) --fd 0、--fd 1、および --fd 2。
他の動作は、「a」フラグによって制御されます。 「a」フラグが存在する場合、 ホース
意志 フォーク(2) 実行する前に command そして子が終了すると、次の処理が実行されます。
shutdown(2) how=2 を指定します。 これにより、接続の両方の半分が閉じられます。 このオプションはそうではありません
ファイル記述子のクローズは次のように検出されるため、ほとんどのアプリケーションで必要です。
リモート プロセスですが、一部のあまり洗練されていないネットワーク デバイス (プリンタなど) では、
a shutdown(2) 正常に動作するため。 物事を完全に明確にするために、次のリストを示します。
に対する受け入れ可能な議論 - シャットダウン オプションは `r'、`w'、`ra'、`wa'、`a' です。
デフォルトでは、 ホース を実行します
これにより、ネットパイプ バージョン 4.0 および XNUMX を「悩ませた」「使用中のアドレス」問題が防止されます。
早く --noreuseaddr 伝える ホース そのシステムコールをスキップし、4.1 以前に戻すには
行動。 この呼び出しがないと、ポートは、呼び出し後にすぐに再利用できるとは限りません。
ホース 終了します。
SHORT FLAGS
引数の入力要件を軽減するため (そして、古くからの機能に敬意を表するため)
UNIX 暗号分類学の伝統) フラグの短い形式をいくつか追加しました。 がここにあります
対応表:
┌──────┬─────────┐
│ショート │ ロング │
│ i │ in │
│ o │ でる │
│ e │ 誤る │
│ #n │ fdn │
│ s │ スレーブ │
│ v │ 詳細 │
│ q │ 静かな │
│ u │ UNIX │
│ p │ ローカルポート │
│ h │ ローカルホスト │
━─────┴─────────┘
見る 蛇口(1) 短いフラグについて詳しく説明します。 彼らの行動はこうあるべきです
驚くことではない。 個別の引数を必要とするフラグは、次の伝統に従っています。
tarとします。
例
これにより、マシン リーフのポート 3000 に接続され、ソケットがマシン リーフの標準入力に接続されます。
tarコマンド。
example$ ホース リーフ 3000 --in tar -xf - 。
実際のコマンドは exec(2)編集者 ホース プログラムは
tar -xf - 。
- の このオプションは、子プロセスの入力が にリダイレクトされることを意味します。
リーフに接続されたソケット。
これにより、現在のディレクトリ内の UNIX ドメイン ソケットに接続されます。
example$ ホース --unix-u-socket --in sh -c \
「unfunky.perl.script | dd of=sample.pgm」
ソケットは sh コマンドに入力を提供します。
onworks.net サービスを使用してオンラインでホースを使用する