linux – bash脚本读取管道或参数
发布时间:2020-05-23 07:27:53 所属栏目:Linux 来源:互联网
导读:我希望我的脚本从stdin读取字符串,如果是管道,或者从参数读取.所以首先我想检查一些文本是否是管道,如果不是,它应该使用一个参数作为输入.我的代码看起来像这样: value=$(cat) # read from stdinif [ $pipe != ]; then #check if pipe is not empty #Do some
|
我希望我的脚本从stdin读取字符串,如果是管道,或者从参数读取.所以首先我想检查一些文本是否是管道,如果不是,它应该使用一个参数作为输入.我的代码看起来像这样: value=$(cat) # read from stdin if [ "$pipe" != "" ]; then #check if pipe is not empty #Do something with pipe string else #Do something with argument string fi 问题是当它没有管道时,脚本将停止并等待“ctrl d”,我不想要那个.关于如何解决这个问题的任何建议? 提前致谢. 解决方法先检查参数怎么样?if (($#)) ; then
process "$1"
else
cat | process
fi
或者,只是利用猫的相同行为: cat "$@" | process (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
