![将参数从一个 shell 脚本传递到另一个 shell 脚本](https://linux22.com/image/55310/%E5%B0%86%E5%8F%82%E6%95%B0%E4%BB%8E%E4%B8%80%E4%B8%AA%20shell%20%E8%84%9A%E6%9C%AC%E4%BC%A0%E9%80%92%E5%88%B0%E5%8F%A6%E4%B8%80%E4%B8%AA%20shell%20%E8%84%9A%E6%9C%AC.png)
我有两个 shell 脚本,test1.sh
我test2.sh
必须调用test2.sh
fromtest1.sh
因为test1.sh
我需要传递一个参数作为命令行参数,因为test2.sh
我需要在提示符下传递一个参数。
代码示例:
$ cat test2.sh
echo "enter id value"
<br>read id
#do some processing here
我如何test2.sh
从拨打电话test1.sh
?
我无法在这里编辑 test2.sh 文件
答案1
如果test2.sh
在同一目录中,则很简单
文件:test1.sh
#!/bin/sh
...
echo 5 | ./test2.sh
man read
有开口:
read -- read a line from standard input
也许你只是错过了点斜线 ./
,这是在当前目录中查找脚本所必需的。或者,您可以让$PATH
变量指向包含test2.sh
.那么就./
不需要了。
答案2
在test1.sh中
echo whatever | test2.sh