Bash 当用户写入退出时,如何退出文本文件编辑模式? 问题:

Bash 当用户写入退出时,如何退出文本文件编辑模式? 问题:,bash,Bash,我想找到一个正确的方式退出文本文件编辑,当用户写退出文件编辑 脚本: 逐行读取标准输入,输出该行并检查所需的退出字符串 while IFS= read -r line; do printf "%s\n" "$LINE" if [[ $LINE == "EXIT" ]]; then break; fi done > "$1" 逐行读取标准输入,输出该行并检查所需的退出字符串 while IFS= read -r line; do prin

我想找到一个正确的方式退出文本文件编辑,当用户写退出文件编辑

脚本:
逐行读取标准输入,输出该行并检查所需的退出字符串

while IFS= read -r line; do
    printf "%s\n" "$LINE"
    if [[ $LINE == "EXIT" ]]; then
         break;
     fi
done > "$1"

逐行读取标准输入,输出该行并检查所需的退出字符串

while IFS= read -r line; do
    printf "%s\n" "$LINE"
    if [[ $LINE == "EXIT" ]]; then
         break;
     fi
done > "$1"

什么是文本文件编辑模式?你这是什么意思?您的意思是对用户的特定输入退出cat命令?是的,当用户将exit写入txt文件时准确地说:用户不写入txt文件,用户写入程序的标准输入。然后,cat命令将用户输入的内容输出到标准输出。然后bash将cat程序的标准输出重定向到该文件。您不处于任何文本编辑模式。cat只是从其标准输入读取数据;键入Control-D以发出其输入结束的信号。bash脚本只是等待cat退出,而不监视cat正在读取的任何内容。什么是文本文件编辑模式?你这是什么意思?您的意思是对用户的特定输入退出cat命令?是的,当用户将exit写入txt文件时准确地说:用户不写入txt文件,用户写入程序的标准输入。然后,cat命令将用户输入的内容输出到标准输出。然后bash将cat程序的标准输出重定向到该文件。您不处于任何文本编辑模式。cat只是从其标准输入读取数据;键入Control-D以发出其输入结束的信号。bash脚本只是等待cat退出,不监视cat正在读取的任何内容;如果[[$line==EXIT]],则执行此操作;然后打破;fi完成>$1删除触摸并删除猫和除shebang和我发布的代码以外的所有内容…您的代码运行良好,谢谢。我面临一个错误,当我通过写exit退出代码时,我想显示文件的内容。我使用了cat,它显示输入文件是输出文件错误,并且没有任何内容保存到文件中,该文件作为参数传递,因此在done>$1下面添加下一个命令,即cat$1。如果你只在pastebin或类似网站上发布你的程序或可复制的示例,这会更容易。这就是我所做的,但不工作仍然触摸$1 cat>$1,而IFS=read-r line;如果[[$line==EXIT]],则执行此操作;然后打破;fi完成>$1删除触摸并删除猫和除shebang和我发布的代码以外的所有内容…您的代码运行良好,谢谢。我面临一个错误,当我通过写exit退出代码时,我想显示文件的内容。我使用了cat,它显示输入文件是输出文件错误,并且没有任何内容保存到文件中,该文件作为参数传递,因此在done>$1下面添加下一个命令,即cat$1。如果你只是在pastebin或类似的网站上发布你的程序或可复制的例子,这会容易得多。