パスワードを忘れた? アカウント作成
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

Windows 10 Insider Preview、AF_UNIXソケットによるWSLアプリとWin32アプリの相互通信が可能に」記事へのコメント

  • あれはUNIXソケットやWindowsでいう名前付きパイプとは違う概念なんだよね…?標準入力と標準出力繋いでるだけの簡単なものと思ってたのに何でWindowsとUNIXで振る舞いが全然違うんだろう

    • by Anonymous Coward
      Windowsのは一時ファイルをつくっているような動作で前のものが完了しないと次に進まないんだが、シェルのパイプは前のコマンドが完了せずに動作できるものは実行するんだよな
      • by Anonymous Coward on 2018年02月12日 11時09分 (#3360110)

        Windows の名前付きパイプってそんなに不便なものなの?
        UNIX にも名前付きパイプがあって、mkfifo で作れるわけだけど、GNU 版 diff だと、二つのファイルのどちらも fifo にすることができて、

        mkfifo tmp
        gzip -dc b.gz > tmp &
        gzip -dc a.gz | diff - tmp > result

        てなことをして、でっかい一時ファイルを作らずに済ませたものだ。

        親コメント
        • by Anonymous Coward

          シェルのパイプは「一時ファイルをつくっているような動作で前のものが完了しないと次に進まない」だけど
          Windows の名前付きパイプは全くの別物だ。

          シェルは動作の互換性で旧来の方式を使ってるだけかと。

        • by Anonymous Coward

          その例、bashやzshを使っているなら、プロセス置換使えば1行で書けて便利です。これも内部ではmkfifoが使われています(ls -l <(echo)すれば分かる)。

          diff <(gzip -dc a.gz) <(gzip -dc b.gz) > result

Stableって古いって意味だっけ? -- Debian初級

処理中...