tcsh:var with current command

时间:2016-07-06 17:50:28

标签: tcsh

tcsh中的

!$是最后一个命令行的最后一个参数:

m:~> man find
m:~> echo !$
find

我正在寻找获取当前命令行的方法(在输入之前)

m:~> echo $current_comm
echo

感谢。

1 个答案:

答案 0 :(得分:2)

!#指的是当前命令。可以通过附加:和数字来编制索引。

例如:

% echo !#:0
echo echo
echo
% 

(shell在执行之前打印历史记录扩展,这就是出现echo echo行的原因。)

更详细的例子:

% echo arg1 arg2 arg3 COMMAND=!#:0 ARG1=!#:1 ARG2=!#:2 ARG3=!#:3
echo arg1 arg2 arg3 COMMAND=echo ARG1=arg1 ARG2=arg2 ARG3=arg3
arg1 arg2 arg3 COMMAND=echo ARG1=arg1 ARG2=arg2 ARG3=arg3
% 

有关详细信息,请man tcsh并搜索"历史记录替换"。