Pipe

為什麼我不能在 macOS 上通過管道將 pwd 傳遞給 open

  • February 27, 2020

這是 macOS 特有的,但似乎過於單一,無法進入Ask Different社區。

在終端中,我可以pwd複製結果,然後鍵入open並粘貼結果,文件夾將在 Finder 中打開,但是

pwd | open

列印open. 為什麼管道不起作用,但粘貼起作用?

我沒有 Mac,所以我無法測試它,但解決方案應該是這樣的:

open "`pwd`"

並非所有程序都接受stdin管道工作所必需的輸入。

macOS 上的open實用程序不從標準輸入讀取,而是從命令行獲取其參數。

要打開目前工作目錄,您必須說

$ open "$( pwd )"

或者

$ open "$PWD"

或者乾脆

$ open .

正如下面的評論中所指出的。

使用該-f標誌,open可以從標準輸入讀取,但只能打開它在預設文本編輯器中接收到的任何內容。

引用自:https://unix.stackexchange.com/questions/297729