gpt4 book ai didi

regex - 如何使用 sed 查找以 AAA 开头但不以 BBB 结尾的行

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

我正在尝试创建一个脚本以将 oracleserver 作为 localhost 的别名附加到 /etc/hosts。这意味着我需要:

  1. 找到 ^127.0.0.1NOT oracleserver$
  2. 的行
  3. 然后,将 oracleserver 附加到这一行

我知道最好的做法可能是使用负面展望。但是,sed 没有环视功能:What's wrong with my lookahead regex in GNU sed? .谁能给我一些可能的解决方案?

最佳答案

sed -i '/oracleserver$/! s/^127\.0\.0\.1.*$/& oracleserver/' filename
  • /oracleserver$/! - 在不以 oracleserver 结尾的行上
  • ^127\.0\.0\.1.*$ - 如果以 127.0.0.1 开头,则替换整行
  • & oracleserver - 该行加上一个空格分隔符 ' '(必需),然后是 oracleserver

关于regex - 如何使用 sed 查找以 AAA 开头但不以 BBB 结尾的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34375891/

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