Bash 如何为在shellscript中运行的程序提供参数?
例如,我有一个shell脚本:Bash 如何为在shellscript中运行的程序提供参数?,bash,Bash,例如,我有一个shell脚本: clear echo "Script is starting now please give input:" read parameter cd /path to program ./program $parameter 我怎样才能给我试图运行的程序提供参数呢?用户输入和传递的参数之间存在差异。在运行脚本时传递参数,用户输入是运行脚本时从终端读取的内容 program.sh clear echo "Script is starting now please
clear
echo "Script is starting now please give input:"
read parameter
cd /path to program
./program $parameter
我怎样才能给我试图运行的程序提供参数呢?用户输入和传递的参数之间存在差异。在运行脚本时传递参数,用户输入是运行脚本时从终端读取的内容 program.sh
clear
echo "Script is starting now please give input:"
# Parameter you passed:
echo "$1 is the parameter you passed."
# capture user input
read parameter
# do what you wish with parameter:
echo "$parameter is the user input read."
请确保更改脚本的权限
$: chmod u+x /path/to/program.sh
使用以下命令运行脚本:
./path/to/program.sh argument
你所做的是正确的(除了我会引用一些变量)。您面临哪些错误您对
读取步骤的输入是什么?您是否收到“权限拒绝错误”?如果您不想使用chmod 777/path/program.sh更改权限(777=对用户、组和其他人的完全权限)。正如@anishsane所提到的,使用引号来保持格式^^777
几乎从来都不是一个好的权限值,除了共享目录和文件。最有可能是755
(如果是脚本)或者555
(如果是二进制)。