Vim

vimdiff 比較輸出而不是文件

  • April 23, 2020

我正在嘗試比較兩個命令輸出(無文件)

vimdiff "$(tail /tmp/cachain.pem)" "$(tail /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem)"

我嘗試使用重定向、管道,vim - -c但我一定遺漏了一些東西。任何人都可以幫忙嗎?

$(…)<(…). 您使用了前者,它將輸出作為參數傳遞給vimdiff. 例如,如果最後一行/path/to/foocontains bar bar bar,那麼下面的命令

echo $(tail -1 /path/to/foo)

相當於

echo bar bar bar

相反,您需要使用<(…). 這稱為程序替換,並將輸出作為偽文件傳遞給vimdiff命令。因此,請使用以下內容。

vimdiff <(tail /tmp/cachain.pem) <(tail /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem)

這在bashand中有效zsh,但顯然沒有辦法tcsh.

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