【发布时间】:2016-01-12 22:40:58
【问题描述】:
如何将命令行上的所有用户输入作为程序的标准输入?
就我而言,我想替换用户输入的某些单词。例如,每次用户使用单词animal1,我希望它接收为goldfish。所以它看起来像这样:
$ animal1
goldfish: command not found
我尝试了以下 bash 命令
while read input
do
sed "s/animal2/zebra/g;s/animal1/goldfish/g" <<< "$input"
done
但它会提示用户输入并且不会返回到 bash。我希望它在使用 bash 命令行时运行。
此外,这使我只能捕获输出。
bash | sed 's/animal2/zebra/g;s/animal1/goldfish/g'
但不是用户输入。
【问题讨论】: