nano编辑器中的快捷方式,用于在bash脚本中为每个以$开头的单词添加引号?
我不熟悉用bash编写代码,我刚刚完成了这个长脚本,但我犯了一个错误,没有在所有变量中添加以一元运算符nano编辑器中的快捷方式,用于在bash脚本中为每个以$开头的单词添加引号?,bash,nano,Bash,Nano,我不熟悉用bash编写代码,我刚刚完成了这个长脚本,但我犯了一个错误,没有在所有变量中添加以一元运算符$开头的引号。手工添加所有引号需要一段时间。是否有一条捷径可以让文本文件中以$开头的所有单词都用引号括起来?因此,如果文件中的一行看起来像: python myProgram.py $car1 $car2 $speed1 $speed2 然后在快捷方式之后,它将显示为 python myProgram.py "$car1" "$car2" "$speed1" "$speed2" 我正在用na
$
开头的引号。手工添加所有引号需要一段时间。是否有一条捷径可以让文本文件中以$
开头的所有单词都用引号括起来?因此,如果文件中的一行看起来像:
python myProgram.py $car1 $car2 $speed1 $speed2
然后在快捷方式之后,它将显示为
python myProgram.py "$car1" "$car2" "$speed1" "$speed2"
我正在用nano编写脚本 根据您的需要,似乎不必提供基于该编辑器的解决方案。如果您有权访问shell,可以尝试以下简单的
sed
命令:
sed -i.bak -r 's/\$\w+/"&"/g' my-script.sh
这远不是完美的,但在你的特殊情况下应该可以做到。如果使用上述命令:
将执行“就地”替换,即修改原始文件,使用-i.bak
扩展名进行备份.bak
是使用模式搜索和替换的常用s/…/…../g
命令。搜索模式介于前两个sed
之间。替换介于最后两个\
/
此模式对应于一个\$\w+
后跟一个或多个字母($
)。\w+
之前的反斜杠是必需的,因为该字符在搜索模式中通常具有特殊意义$
是替换字符串。在这里,“&”
被搜索模式中找到的字符串替换。广义地说,这个放引号围绕着任何匹配搜索模式的字符串&
sed
命令:
sed -i.bak -r 's/\$\w+/"&"/g' my-script.sh
这远不是完美的,但在你的特殊情况下应该可以做到。如果使用上述命令:
将执行“就地”替换,即修改原始文件,使用-i.bak
扩展名进行备份.bak
是使用模式搜索和替换的常用s/…/…../g
命令。搜索模式介于前两个sed
之间。替换介于最后两个\
/
此模式对应于一个\$\w+
后跟一个或多个字母($
)。\w+
之前的反斜杠是必需的,因为该字符在搜索模式中通常具有特殊意义$
是替换字符串。在这里,“&”
被搜索模式中找到的字符串替换。广义地说,这个放引号围绕着任何匹配搜索模式的字符串&
sed
命令:
sed -i.bak -r 's/\$\w+/"&"/g' my-script.sh
这远不是完美的,但在你的特殊情况下应该可以做到。如果使用上述命令:
将执行“就地”替换,即修改原始文件,使用-i.bak
扩展名进行备份.bak
是使用模式搜索和替换的常用s/…/…../g
命令。搜索模式介于前两个sed
之间。替换介于最后两个\
/
此模式对应于一个\$\w+
后跟一个或多个字母($
)。\w+
之前的反斜杠是必需的,因为该字符在搜索模式中通常具有特殊意义$
是替换字符串。在这里,“&”
被搜索模式中找到的字符串替换。广义地说,这个放引号围绕着任何匹配搜索模式的字符串&
sed
命令:
sed -i.bak -r 's/\$\w+/"&"/g' my-script.sh
这远不是完美的,但在你的特殊情况下应该可以做到。如果使用上述命令:
将执行“就地”替换,即修改原始文件,使用-i.bak
扩展名进行备份.bak
是使用模式搜索和替换的常用s/…/…../g
命令。搜索模式介于前两个sed
之间。替换介于最后两个\
/
此模式对应于一个\$\w+
后跟一个或多个字母($
)。\w+
之前的反斜杠是必需的,因为该字符在搜索模式中通常具有特殊意义$
是替换字符串。在这里,“&”
被搜索模式中找到的字符串替换。广义地说,这个放引号围绕着任何匹配搜索模式的字符串&
(\$\w+)
C-\
Alt-R
切换到regex模式(\$\w+)
。按回车键“\1”
用引号替换捕获的表达式。按回车键A
使用全局搜索并替换为表达式
(\$\w+
)
C-\
Alt-R
切换到regex模式(\$\w+)
。按回车键“\1”
用引号替换捕获的表达式。打