Redian新闻
>
请教:有关位置参数的问题。
avatar
请教:有关位置参数的问题。# Unix - 噫吁兮,危乎高哉
l*t
1
现在有一个script,叫做 abcd
我想在命令行中输入:
$abcd `ls *.dat` col_num
~ ~back quote
col_num 是一个要输入的参数.
在script中,我想要利用位置参数来调用这个col_num变量的值。
问题是我还不知道有多少个*.dat文件,因此我不知道col_num的位置参数。
请教大虾:如何能用位置参数来表示col_num?
多谢了!
avatar
l*t
2
补充:
可以把col_num放在文件列表之前。
这个方法我也想到过了,但是我还是想把它放在后面。
各位还有什么高招吗?
我想可能还是怎么利用 quotes, double quotes, back quotes 的问题.

【在 l**t 的大作中提到】
: 现在有一个script,叫做 abcd
: 我想在命令行中输入:
: $abcd `ls *.dat` col_num
: ~ ~back quote
: col_num 是一个要输入的参数.
: 在script中,我想要利用位置参数来调用这个col_num变量的值。
: 问题是我还不知道有多少个*.dat文件,因此我不知道col_num的位置参数。
: 请教大虾:如何能用位置参数来表示col_num?
: 多谢了!

avatar
e*e
3
in bash, $# gives you the number of arguments
so $($#) shall be the last argument.

【在 l**t 的大作中提到】
: 补充:
: 可以把col_num放在文件列表之前。
: 这个方法我也想到过了,但是我还是想把它放在后面。
: 各位还有什么高招吗?
: 我想可能还是怎么利用 quotes, double quotes, back quotes 的问题.

avatar
l*t
4
兄弟,不行呀。
> echo $\($#\), $"$#", $'$#', $6
> $6, $6, $6, file123.dat
anyway, thank you!

【在 e***e 的大作中提到】
: in bash, $# gives you the number of arguments
: so $($#) shall be the last argument.

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。