我正在学习linux和编写bash脚本。
是否可以使用echo
命令显示文本,然后返回并编辑要在其位置显示的文本的一部分?
如果echo
没有这样做,那么在bash中如何提示用户使用可以编辑或删除和替换的默认字符串?
答案 0 :(得分:1)
从bash开始,为了向用户显示一行文字并允许他们对其进行编辑,您可以将read
与默认文本和env var一起使用,如下所示:
paul@home:~$ read -e -i "default command" FOO
--> default command (edit to "default cmd" <enter>)
paul@home:~$ echo $FOO
--> default cmd
在bash中使用help read
了解有关阅读的更多信息。
对于一些有点小朋友的东西,有各种小部件,请看dialog
。 Dialog的缺点是它没有内置到bash中,所以可能没有安装。
要编辑多行,请运行文本编辑器。有些脚本允许最终用户通过运行$EDITOR
来选择文本编辑器,而不是编写脚本来运行像vi / emacs / nano这样的特定编辑器。在使用$EDITOR
之前,请确保它不是空白。