我有一个bash脚本,我想要打印结果或者只是运行脚本而不打印结果(检查os类型的脚本(linux,ubuntu,debian等)。取决于我发送的内容(./script P(只是一个例子))我希望它将信息回显到屏幕上。 我该如何轻松地做到这一点?
在这里写 ... shootProfile
#echo "OS: $OS"
#echo "DIST: $DIST"
#echo "PSUEDONAME: $PSUEDONAME"
#echo "REV: $REV"
#echo "DistroBasedOn: $DistroBasedOn"
#echo "KERNEL: $KERNEL"
#echo "MACH: $MACH"
#echo "========"
... 在这之后
所以,如果我发送./script P,那么#echo应该是echo ...或类似的东西,以便将该输出发送到屏幕。 我现在觉得自己像个总菜鸟:/
答案 0 :(得分:0)
你可以通过这样的方式发送它:
$ ./myscript.sh "parameter"
你从脚本那里选择它:
#!/bin/sh
echo "This is the first parameter: $1"
此外,您可以使用一些条件:
if test "$1" = "P"
then
echo "You said P"
fi
答案 1 :(得分:0)
我相信你正在寻找类似的东西:
for arg in "$@" ; do
case "$arg" in
P|p) echo "PSEUDONAME: $PSEUDONAME" ;;
O|o) echo "OS: $OS" ;;
*) echo "I did not implement the recognition of : ${arg}"
echo "Please correct the invocation of the script, or the script itself"
echo "I STOP HERE."
exit 1
;;
esac
done
这将允许您在脚本名称后指定几个命令,并且它们将被全部处理(或者,如果您忘记了其中一个的必要识别,将输出一条消息然后退出而不是继续“怪异”状态“)