shell脚本动态传入参数
1. 如何给shell脚本传入参数小结
#!/bin/bash
echoStart...
echo第0个参数是:$0
echo共有$#个参数:
echo所有参数是:$@
forargsin$@
do
echo$args
done
echoEnd...
有这些就够你用的了。
2. shell 如何启动另外一个脚本执行,并传递参数
子shell变量传递给父shell,中间可以保存个临时文件让父shell去读。
下边是一个子shell,传递给父shell的一个例子,仅做参考
#!/bin/bash
(
subvar="helloshell"
echo"$subvar">temp.txt
)
readpvar<temp.txt
echo$pvar
3. 怎么写一个shell脚本传入参数
echo第1个参数为$1
echo第9个参数为$9
echo第11个参数为${11}
forpin"$@";do
echo$p
done
forp;do
echo$p
done
4. 怎么给shell命令传递可变参数
#!/bin/sh
myFunc()
{
echo "$1"
}
var="$1"
myFunc "$var"
---------------
脚本名为test.sh,执行脚本 ./test.sh test
最后就会在屏幕上打印出字符串 test
说明:脚本主体中用$1取脚本的第一个参数,函数中用$1取函数的第一个参数。第二个参数用$2。依此类推,直到$9。
5. 往shell脚本中传入参数
参数如下:
$# ----传递给程序的总的参数数目
$? ----上一个代码或者shell程序在shell中退出的情况,如果正常退出则返回0,反之为非0值。
$* ----传递给程序的所有参数组成的字符串。
$n ----表示第几个参数,$1 表示第一个参数,$2 表示第二个参数 ... $0 ----当前程序的名称
$@----以"参数1" "参数2" ... 形式保存所有参数
$$ ----本程序的(进程ID号)PID
$! ----上一个命令的PID
6. 如何给shell脚本传参数
调用shell脚本时,后面接参数即可,例如
./test.sh arg1 arg2 arg3 .... 即表示传入参数arg1, arg2 ,arg3
在test.sh中
使用$1, $2 ,$3 分别表示接收到的参数arg1, arg2, arg3
注意,如果参数中包含空格的话,整个参数要用引号括起来,避免被分割成两个参数
7. linux如何编写shell自动多次执行一个第三方程序并传入参数
首先这个不叫批处理 叫shell脚本 其次我还是不理解会有人在这种地方问Linux的问题 感觉很山寨
整个互联网难道除了网络知道就没有地方可以问问题了吗?
你描述这个问题不是很清楚 为什么非要把参数放到一个文件里面 不理解
我写一个bash脚本吧 如果你用的是正常的发行版直接贴到命令行执行就可以了 1000是执行次数
for i in {1..1000}; do echo apple$i > ./w.tcl; ns ./w.tcl >> ./apple; done
不要追问我 追问了我也不会答的 分我也不在乎 你自己留着吧
8. 如何给shell脚本传参
这里有一个简单的参数调用的代码,请参考
functiontest
{
#这里通过$1,$2,来使用传递的参数
echo'Youinputis:'$1
}
echo'=======Paramtest========'
echo'Pleaseinputparam:'
readparam
#如果有多个参数,在后面加即可。
test${param}
下面是结果:
=======Param test========
Please input param:
aaaaaaa
You input is: aaaaaaa
9. 如何给shell脚本传参数
方法/步骤
执行“nano test.sh”创建一个新的shell脚本。
脚本test.sh的内容如下:
#!/bin/sh
name=$1
echo "the ${name} are great man!"
给新创建的test.sh的脚本赋可执行权限,命令为“chmod 755 test.sh”。
执行'./test.sh "xiao wang"'命令,可以看到自己编写脚本的结果“the xiao wang are great man!”。
"name=$1"中$1为系统提供的位置参数,$0代表程序的名称,[$1/$2/...]从1开始为传递的参数。
linux系统除了提供位置参数还提供内置参数,内置参数如下:
$# ----传递给程序的总的参数数目
$? ----上一个代码或者shell程序在shell中退出的情况,如果正常退出则返回0,反之为非0值。
$* ----传递给程序的所有参数组成的字符串。
$n ----表示第几个参数,$1 表示第一个参数,$2 表示第二个参数 ... $0 ----当前程序的名称
$@----以"参数1" "参数2" ... 形式保存所有参数
$$ ----本程序的(进程ID号)PID
$! ----上一个命令的PID
10. 如何传递参数给linux shell 脚本(当脚本从标准输入而不是从文件获取时)
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也可以是最初的第一个脚本调用传递进来的,也可以是硬编码写死的。
