如何解决Bash,将行注入文件
一开始我的下面有一个错误,所以我正在编辑并重新打开它。
我在将行注入文件时遇到了一些问题。我的目标是:
- 查找该行(在本例中为
VIMLINE
)。如果线在那里,什么都不做(或删除线,我需要在不同的时间做“什么都不做”和“删除线”,但不知道如何适应删除 - 删除适用于以下情况我想确保在脚本末尾注入)。 - 如果该行不存在(这是
||
应该做的,我认为)然后将该行附加到脚本的末尾。
以下非常适合将文件中尚未存在的行注入该文件。
VIMLINE='color industry'
grep -qxF "$VIMLINE" ~/.vimrc || echo $VIMLINE | sudo tee --append ~/.vimrc
我的问题是,如何将上述内容修改为:查找一行(或一行的一部分)并删除该行,然后重新注入该行(以确保将该行添加到文件)?
解决方法
回答新问题:
sed -i '/'$VIMLINE'/{h;d}; $G' ~/.vimrc
回答老问题:
您实际上是在 $VIMLINE 上搜索,请改用 grep -qxF "$VIMLINE" ...
来搜索“colorindustry”。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。