如何传递参数给linux shell 脚本(当脚本从标准输入而不是从文件获取时)

如何传递参数给linux shell 脚本(当脚本从标准输入而不是从文件获取时),第1张

sh 绝对路径/xxx.sh 参数1 参数2 参数3........参数n

---------------------------------------------------------------------------------

如果你保存临时文件的话,可以使用xargs

比如脚本文件为1.sh,而参数保存在args文件中,用一个命令得到参数内容

cat args

那么最后可以这样执行

cat args |xargs sh 1.sh

如果不打算保存临时文件,那你只好在脚本中写清楚要如何调用,参数有几个。

比如你使用2.sh调用1.sh,在2.sh 中写清楚

1.sh $arg1 $arg2这样就可以了。

当然脚本中的arg1,arg2也可以是最初的第一个脚本调用传递进来的,也可以是硬编码写死的。

Linux shell脚本开始执行时,系统会初始化一些脚本的环境变量和参数变量,这些变量是可以直接使用的,下面是一些参数变量:

$1,$2,$3......:代表脚本程序的参数,脚本有几个参数数字就到几;

那$0代表什么呢?当然是脚本的名字了

还有和脚本参数有关的一个脚本环境变量:$#

它代表传递给脚本的参数个数。

知道了这些,你就可以在你编写的脚本内编写处理脚本参数的代码,一旦你的脚本有了对参数的处理,你就可以这样调用有参数的脚本:

./脚本名 参数1 参数2......

参数和脚本名、参数和参数之间用空格分开,和使用shell命令的格式是一样的。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8601164.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-18
下一篇 2023-04-18

发表评论

登录后才能评论

评论列表(0条)

保存