sed 发表于 2018-07-11 更新于 2020-09-11 1234567891011121314151617181920212223242526272829# 替换全部匹配内容sed -i 's/aaa/bbb/g' file.txt# 查看匹配的行sed -n '/aaa/p'# 查看某时间段到现在的系统日志sed -n '/May 20 17/,$p' /var/log/messages | lesssed -n '/2019-12-02 09:27/,/2019-12-02 09:30/p' logfilesed -n '/2010-11-17 09:[0-9][0-9]:[0-9][0-9]/,/2010-11-17 16:[0-9][0-9]:[0-9][0-9]/p' logfile# 合并连续空行sed -e '/^$/{N;/\n$/D};' $file# 修改内容# 修改类似于 `ZSH_THEME="robbyrussel"` 改成 `ZSH_THEME="gnzh"`# 这个方式必须要指定被替换部分的前后, 如下列, 前半部分: \(^ZSH_THEME=\"\) 后半部分: \(\"\$\)sed -i "s@\(^ZSH_THEME=\"\).*\(\"\$\)@\1gnzh\2@g" ~/.zshrc_bak# 修改类似于 ` <version>1.0-snapshot</version>`sed -i "s@\(.*<$property_name>\).*\(</$property_name>.*\)@\1$sdk_version\2@g" $pom_filesed -i "s/^-Xms.*/-Xms$xms_size/g" "$file"sed -i "s/^-Xmx.*/-Xms$xmx_size/g" "$file"sed -i "s@\(^-XX:ReservedCodeCacheSize=\).*\($\)@\1$cache_code_size\2@g" "$file"# 删除指定行及之后的后2行sed -i '/export NVM_DIR/,+2d' ~/.bashrc 1. Resource https://blog.csdn.net/ha_weii/article/details/80754284