gpt4 book ai didi

bash - 在 bash 中,如何处理命令行上的所有用户输入

转载 作者:行者123 更新时间:2023-11-29 09:23:23 24 4
gpt4 key购买 nike

如何将命令行上的所有用户输入作为程序的标准输入?

在我的例子中,我想替换用户输入的某些词。例如,每次用户使用单词 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'

但不是用户输入。

最佳答案

如果我没理解错的话,听起来你只需要设置一些别名:

$ alias animal1=goldfish
$ animal1
bash: goldfish: command not found

这允许 shell 像往常一样以交互方式使用,但会进行您想要的替换。

您可以将此别名定义添加到您的启动文件之一,通常是 ~/.bashrc~/.profile,以使它们在任何新 shell 上生效你打开。

关于bash - 在 bash 中,如何处理命令行上的所有用户输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34744036/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com