例如命令
myCommand !* &
&
运行在后台,但是 !*
是什么?我无法在任何地方找到它,c shell 已经不再使用了...
!
是历史替换的开始。!*
表示“前面命令的所有参数”。
所以如果你先执行:
echo foo bar baz
然后执行
myCommand !* &
myCommand foo bar baz &
alias myc 'myCommand !* &'
然后是编写代码
myc foo bar baz
被扩展为
myCommand foo bar baz &
echo foo bar
然后执行 echo !*
,我会得到 echo foo bar (换行) foo bar
?为什么不只是 foo bar
? - undefined
!
,它在 csh man page 中有记录。 - Etan Reisner