答えて
ディレクトリを返すことの意味を完全にはわかりません。ここでzshが何をするのかについては、echo <(-)
が手がかりを与えます。システムによっては、/dev/fd/12
のようなものや、おそらく一時ファイルの名前が表示される可能性があります。
<(...)
はzsh構造です。 Zshはサブシェルを作成し、パイプに向けられたコマンドstdoutを使ってサブシェルでコマンドを実行します。次に、使用しているオペレーティングシステムに応じて、パイプのもう一方の端を/dev/fd
または/proc/self/fd
に置き換えます。 -
コマンドは、実際にはプリコマンド修飾子であり、単独では何もしません。だから何もしないことを終えた後、それは終わり、パイプの終わりに行く。 cat
はファイルの終わりを読み取り、順番に終了します。 cat <(echo hi)
のようなものとどうなるか比較してください。
同様の形式=(...)
は、一時ファイルの使用を強制します。これは、diff
のようなコマンドでファイル内のランダムな位置を探す必要がある場合に便利です。最後に、>(...)
が出力されます。これはパイプのようなビットです。
-
は、プリコマンド修飾子です。 man zsh
によると:
cat <(-)
で
- The command is executed with a `-' prepended to its argv[0]
string.
、これは、それが-
命名されたかのように実行されている(自動的に成功する出力なしで)ヌルコマンドに達する必要があります。私はどのように出力が古い作業ディレクトリに関連して取得しているかはわかりません。 cd -
は、新しい作業ディレクトリ, but
- doesn't trigger a directory change even with
auto_cd enabled (and
auto_cd shouldn't apply inside a process substitution anyway, since
SHIN_STDIN`が設定されていません)を印刷します。
(謝罪;これは質問にコメントではなく、答えとしてより適切かもしれません。)
- 1. `cat <does_not_exist | perl`は
- 2. ZSHディレクトリの拡張(「..」「../」内に)
- 3. NSMutableStringによって返されるnull
- 4. Rubyで配列内の重複値を検出するにはどうすればよいですか? - 例えば</p>ことによってIサイクルを行い、かつ重複して何かをどのように <pre><code>a = [cat, dog, cat, mouse, rat, dog, cat] </code></pre> <p>:
- 5. libuv:uv_tcp_connectによって返されるintは何ですか?
- 6. ブラウザAPIによって返されるオブジェクトはconstですか?
- 7. quandl.getによって返される型は何ですか?
- 8. MongoCollection.find()によって返されるデータ型は何ですか?
- 9. bash/zshの<()
- 10. プログラムはZSHで認識されなくなった
- 11. Sequelize FindOneによって返されるオブジェクトにプロパティを追加します。
- 12. cat << EOFの代わりに<< EOFを使用してみませんか?
- 13. cat <<を理解する!構文
- 14. SQLPlusのフィードバックによってNULL行が返される
- 15. `show collections 'によって返されるサイズは?
- 16. Open :: URI.openによって返されるものは?
- 17. 現在のディレクトリは、後に別のユーザーによって移動された
- 18. スタティックカウンタはNSTimerによって繰り返しインクリメントされる
- 19. アプリケーションでSQLクエリによってテーブル名が返される
- 20. シェルスクリプトによるcatの許可が拒否されました
- 21. GROUP_CONCATとLEFT JOINを組み合わせるにはどうすればよいですか?これは私のテーブル名です</p> <pre><code>╔══════════╦══════╗ ║ animal ║ id ║ ╠══════════╬══════╣ ║ dog ║ 1 ║ ║ cat ║ 4 ║ ║ cat ║ 3 ║ ║ bird ║ 1 ║ ╚══════════╩══════╝ </code></pre> <p>:
- 22. 無効なJSONがWCFによってランダムに返される
- 23. SvnClientを使ってより速いsvn catを実装する
- 24. 関数によって返された配列にアクセスする
- 25. <JAVA_HOME>/JRE/libディレクトリ内のjarファイルがない、ブートストラップクラスローダによってロードされたのはなぜ
- 26. クラス名は、コンパイル、プレ、ポストによって返されますが、ディレクティブコントローラでは返されません。
- 27. Mavenは、私が<strong>正常に生成メタモデル</strong>を持っているし、すべてのメタモデルクラスが<strong>ターゲット/注釈</strong>ディレクトリに出力されたDAOクラスによって認識されない休止5.2で
- 28. 私はLaravelによって返され、次のコードを持って、次のコード
- 29. のzshスクリプトパーサーエラー私は、次の謙虚なzshの機能を持っている/他
- 30. IDのリストに従ってEFによって返されたオブジェクトをソートするにはどうすればよいですか?</p> <pre><code>User { PK: UserId ... } Product { PK: ProductId, FK: UserId ... } </code></pre> <p>私はランダムな形式で<code>ProductId</code>のリストを持っている:
はい、 'エコー<( - )' '/ procの/自己/ FD /を11 'に印刷されます、私のシステムでは$ OLDPWDを返します。私はそれが偶然であったのか、それとも期待できるのか疑問に思いました。 (1)返されたものが一時的に存在しないファイルハンドルではない理由、(2)$ OLDPWDを取得する一貫性がない理由を理解しています。 –
'popd'や' cd -'のようなものに '-'をエイリアスさせてしまったと思います。 'pushd_silent'オプションが設定されていない限り、新しいディレクトリを表示します。しかし、 '<(...) 'のコマンドはサブシェルで実行されるため、ディレクトリの変更は親ディレクトリでは有効になりません。私はあなたがそこにいたことを知らなかったエイリアスを持っているなら、oh-my-zshのようなプラグインフレームワークを使っています。 – okapi
ああ、それです! zshの 'alias'は、' -'が実際に 'cd-'の短縮形であることを示しています。おそらく実際には 'oh-my-zsh'の(デフォルトの)プラグインによって導入されています。 –