当我想在没有传递参数(文件)的情况下使用标准输入时,脚本不起作用。有什么方法可以在这段代码中使用标准输入而不是文件吗?
我试过这个:
if [ ! -n $1 ] # check if argument exists
then
$1=$(</dev/stdin) # if not use stdin as an argument
fi
var="$1"
while read line
do
... # find the longest line
done <"$var"
对于在缺少参数时想要从 stdin 读取值的一般情况,这将起作用。
$ echo param | script.sh
$ script.sh param
脚本文件
#!/bin/bash
set -- "${1:-$(</dev/stdin)}" "${@:2}"
echo $1
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)