我经常输入这个命令,并试图给它起别名,但由于某种原因不能。
for FILE in `svn stat | awk '{print $2}'`; do svn revert $FILE; done
这显然会进行大量的 svn 恢复。
当我给它起别名时:
alias revert_all="for FILE in `svn stat | awk '{print $2}'`; do svn revert $FILE; done"
svn stat 立即运行 - 不好
然后我尝试双引号 awk 部分:
alias revert_all='for FILE in `svn stat | awk "{print $2}"`; do svn revert $FILE; done'
但这无法正常运行 - awk 部分无法执行(我得到显示的 M 值并尝试运行 svn revert M)。
下一次尝试,使用转义的单引号:
alias revert_all='for FILE in `svn stat | awk \'{print $2}\'`; do svn revert $FILE; done'
命令未完成,bash 正在等待另一个滴答声?
我知道我可以编写这个脚本,或者将 awk 命令放入文件中,但我并不是在寻找解决方法。这里有一些我不知道的事情。它是什么?
TIA
我注意到您对解决方法不感兴趣,但它似乎与本机方式一样有用。不要使用别名,而是定义为函数并放入 .bashrc:
revert_all() { for FILE in `svn stat | awk '{print $2}'`; do svn revert $FILE; done}
刚刚测试:
alias revert_all="for FILE in \`svn stat | awk '{print $2}'\`; do svn revert $FILE; done"
works.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)