【发布时间】:2017-08-30 18:10:25
【问题描述】:
在 linux 中可以这样做:
git diff $(git status -s -b | sed -n '2p' | cut -d' ' -f2-)
或更简单的情况
ls $(pwd)
问题是如何在 Windows 中实现相同的功能? (不使用批处理文件,命令提示符中的单行)。并非所有命令都支持管道,所以我们如何评估一个并将结果作为参数传递给另一个?
我尝试过管道和< 和>,但没有任何效果。
git diff < (git status -s -b | sed -n '2p' | cut -d' ' -f2-)
你自己试试它需要一个文件。而| 也不起作用,因为git diff 不支持它
git status -s -b | sed -n '2p' | cut -d' ' -f2- | git diff // results in illegal seek
【问题讨论】:
-
在 windows 中使用双引号而不是单引号(就像在 linux 上一样)。
-
尝试使用
^转义管道,即-s -b ^| sed
标签: windows shell cmd pipe command-prompt