C-shell 中的位置参数
Positional Parameters in C-shell
我无法使用此 shell 命令打印位置参数:echo
。
我按照以下两个命令使用它:
% set hi how are you
% echo
命令没有输出任何内容,但 hi
应该打印出来。
在csh中,需要赋值给argv
数组:
> set argv=(hi how are you)
> echo
hi
解释:
argv
是一个包含命令行参数列表的数组变量(第 0 个参数是名称,因为 shell 被调用,另一个从第 1 个索引开始)。变量 [=13=]
- $n
也包含参数的值。所以 $argv[1]
与 </code> 相同。要分配给数组变量,您可以使用 <code>set arr=(value1 value2)
或 set arr[1] = value1
.
set value1 value2
可以在 bash
中工作,但是 csh
类似于 C 语言,因此使用 argv
数组(阅读一些关于C 程序命令行参数,如果你不知道为什么)。
但是在csh
中,这个:set first second
意味着给变量first
和second
赋一个空值。
我无法使用此 shell 命令打印位置参数:echo
。
我按照以下两个命令使用它:
% set hi how are you
% echo
命令没有输出任何内容,但 hi
应该打印出来。
在csh中,需要赋值给argv
数组:
> set argv=(hi how are you)
> echo
hi
解释:
argv
是一个包含命令行参数列表的数组变量(第 0 个参数是名称,因为 shell 被调用,另一个从第 1 个索引开始)。变量 [=13=]
- $n
也包含参数的值。所以 $argv[1]
与 </code> 相同。要分配给数组变量,您可以使用 <code>set arr=(value1 value2)
或 set arr[1] = value1
.
set value1 value2
可以在 bash
中工作,但是 csh
类似于 C 语言,因此使用 argv
数组(阅读一些关于C 程序命令行参数,如果你不知道为什么)。
但是在csh
中,这个:set first second
意味着给变量first
和second
赋一个空值。