你能试试下面的(我删除了)吗
grep
从你的代码中分离出来
awk
git status | awk '/modified/{split($0,a,":"); print "git checkout " a[2] > ("script.ksh")} END{close("script.ksh");system("chmod 755 script.ksh;./script.ksh")}'
说明:
awk
代码只是创建一个脚本文件(仅适用于那些具有字符串的行)
modified
awk
man awk
供使用
system
功能
awk
awk
在程序中运行BASH级别的命令。还有一点
close("script.ksh")
应该这样做以避免像OP got这样的错误
file is busy....etc
程序仍在运行,所以文件将在后端打开,在我们关闭它之后,它就可以用来运行它了。
上面的解决方案使用一个脚本文件来运行所有git语句,以防您希望在不创建文件的情况下运行它们,然后尝试以下操作。
git status | awk '/modified/{split($0,a,":"); print "git checkout " a[2]}' | sh