当stdin来自`cat` bash时,读完全stdin直到EOF
发布时间:2020-12-15 21:23:46 所属栏目:安全 来源:网络整理
导读:我正在尝试将完整的stdin读入变量: script.sh #/bin/bashinput=""while read linedo echo "$line" input="$input""n""$line"done /dev/stdinecho "$input" /tmp/test 当我运行ls | ./script.sh或大多数其他命令,它工作正常. 但是当我运行cat |时,它不起作
我正在尝试将完整的stdin读入变量:
script.sh #/bin/bash input="" while read line do echo "$line" input="$input""n""$line" done < /dev/stdin echo "$input" > /tmp/test 当我运行ls | ./script.sh或大多数其他命令,它工作正常. 但是当我运行cat |时,它不起作用./script.sh,输入我的消息,然后按Ctrl-C退出cat. 有任何想法吗 ? 解决方法
我会坚持一线
input=$(cat) 当然,Ctrl-D应该用于表示文件结束. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |