sed 常见用法
(1)添加注释
sed -i 's/^\(77\)/# \1/' /tmp/abc/test.txt
注释掉指定行:
sed -e '2,3{s/^/#/}' test.txt
说明:注释掉第2行和第三行
删除c语言的注释(//)
sed -e 's/\/\/\(.*\)/\1/g' fenzhifa.c
(2)删除注释
sed -i 's/^#[[:space:]]*//' /tmp/abc/test.txt
(3)获取脚本所在目录
shell脚本文件名称:loc.sh
内容:
#!/bin/sh #---------------------------- locate this_dir ----------------start ## this file path this_dir=`pwd` dirname $0|grep "^/" >/dev/null if [ $? -eq 0 ];then this_dir=`dirname $0` else dirname $0 | grep "^\.$" >/dev/null if [ $? -ne 0 ];then this_dir=`dirname $0|sed "s#^#${this_dir}/#"` fi fi echo $this_dir #---------------------------- locate this_dir ----------------end
执行:
ctier@allinone-yunyingyong-2-v-o:/tmp/abc/ccc$ ./loc.sh
/tmp/abc/ccc
(4)在键值对后面增加export
sed -e "s#\(.*\)=.*#&\nexport \1#" prop.txt
prop.txt的内容如下:
name=whuang
age=27
运行结果:
ctier@allinone-yunyingyong-chanjet02-v-o:/tmp/abc$ sed -e "s#\(.*\)=.*#&\nexport \1#" prop.txt
name=whuang
export name
age=27
export age
对于path变量
ctier@allinone-yunyingyong-chanjet02-v-o:/tmp/abc$ sed "s#\(.*\)=\(.*\)#if [ x\"$\1\" = x ];then\n\t&\nelse\n\t&:\"$\1\"\nfi\nexport \1#" prop.txt
if [ x"$name" = x ];then
name=whuang
else
name=whuang:"$name"
fi
export name
if [ x"$age" = x ];then
age=27
else
age=27:"$age"
fi
export age
(5)解决中标麒麟注册服务失败的问题
#!/bin/sh if [ `id -u` -ne 0 ];then echo "Please rerun this script as root ." exit 2 fi if [ -z "$1" ];then echo "please specify patch path:" exit 2 fi
#-------------------------------- function start ------------------------------------------ delete_Required_Start() { filePath="$1" if [ -f "$filePath" ];then sed -i '2,10{/Required-Start/d;}' "$filePath" sed -i '2,10{/Required-Stop/d;}' "$filePath" fi } #-------------------------------- function end ------------------------------------------
this_dir=`pwd` patch_path="$1" ls "$patch_path/patch.sh" >/dev/null 2>&1 if [ $? -eq 0 ];then patch_path="$patch_path/patch" fi server_bin="$patch_path/patch/build/SERVER/bin" tomcat_bin="$patch_path/patch/build/STOOLS/tomcat/bin" cd "$server_bin" for ii in `ls *7d`;do delete_Required_Start "$ii" done
cd "$tomcat_bin" for ii in `ls *7d`;do delete_Required_Start "$ii" done
sed -i 's/log_warning_message\([ ]*(\)/log_warning_msg\1/' /lib/lsb/init-functions
cd "$this_dir" |
相关推荐
本篇文章将重点介绍`sed`的一些常用用法,以帮助读者更好地理解和应用这个工具。 1. **基本语法** `sed`的基本命令格式是: ``` sed [选项] '命令' 文件 ``` 其中,`选项`通常用于设置工作模式,`命令`是你要...
### SED中文指南:深入解析SED的用法与实例 #### 1. SED简介 SED,全称为Stream Editor,是一种强大的文本处理工具,广泛应用于UNIX系统中,用于自动化文本编辑任务。它允许用户通过一系列预定义的命令来对文本...
`sed`支持常见的正则表达式元字符,如`^`表示行首,`$`表示行尾,`.`表示任何字符,`*`表示零个或多个前导字符,`[]`用于创建字符集,`[^]`表示不在字符集内的字符,`\(..\)`用于保存匹配的子串,`\1`等用于引用保存...
本文将详细解读sed命令在Linux环境下的用法,包括其基本语法以及常见用例。 首先,sed命令的基本语法格式为: ``` sed [选项] '脚本' [文件] ``` 其中,选项部分可以用于控制sed的行为,例如-i选项可以用于直接...
LINUX 的 awk 和 sed 的常用用法 awk 是一种功能强大的文本处理工具,它可以在文件或字符串中基于指定规则浏览和抽取信息。awk 语言的最基本功能是在文件或字符串中基于指定规则浏览和抽取信息。 调用 awk 有三种...
4. **自动化的编辑过程**:sed可以通过编写简单的脚本来自动化常见的编辑任务。 #### GNUsed:最佳sed版本之一 对于Linux用户而言,GNUsed是一个非常优秀的sed版本,其最新版本为3.02.80。相比早期版本,GNUsed...
`gzip`和`zip`是常见的文件压缩工具,它们可以减小文件占用的空间。在权限管理方面,`chmod`命令用于更改文件或目录的权限,`chown`和`chgrp`用于改变文件的所有者和组。 `vi/vim`是流行的文本编辑器,而`gcc/g++`...
例如,`sed`的一个常见用法是替换文本,如: ```bash sed 's/old/new/g' input.txt > output.txt ``` 这个命令会读取`input.txt`文件,将所有出现的"old"字符串替换为"new",并将结果保存到`output.txt`中。这里的...
### SED用法介绍 1. **基本格式**: SED命令的基本格式为: ``` sed [-n] [-e] 'command' file(s) sed [-n] -f scriptfile file(s) ``` 其中,`-n`选项抑制默认的输出,`-e`选项后跟单个命令,`-f`选项用于从...
使用sed进行文本替换是最常见的用法之一。替换命令`s/old/new/`可实现将文本中的old内容替换为new。如果需要全局替换,可以在末尾加上`g`。而`p`命令可以用来打印出修改后的行,`w`命令可以将修改后的行写入到一个...
### Linux sed 命令全参数及用法详解 #### 一、sed 命令简介 `sed`(stream editor)是 Linux 和 Unix 系统中的一个强大的文本处理工具,它能够对输入流(标准输入或文件)进行编辑、过滤、替换等操作,并将结果...
本文将基于提供的材料,详细介绍`sed`的基本概念及其常见用法。 #### 基础知识 `sed`命令的一般格式如下: ``` sed [选项] [脚本] [文件] ``` - **选项**:用于指定特定的行为模式。 - **脚本**:一系列的`sed`...
1. `awk`和`sed`的基本用法:包括命令行选项、基本语法结构和常见操作。 2. 表达式和模式:`awk`的模式-动作结构和`sed`的地址范围。 3. 字段和记录:`awk`中的字段分隔符和`NF`变量,以及`sed`中的行处理。 4. 正则...
- **正则表达式元字符**:除了常见的元字符,sed还支持诸如`\b`(单词边界),`\{m\}`, `\{m,n\}`等更复杂的构造。 总结来说,sed是一个强大的文本处理工具,通过其丰富的命令和正则表达式功能,可以实现对文本文件...
Linux系统中,文本处理是一项常见且重要的任务,grep、sed和awk是三个常用的文本处理工具,因其功能强大,被誉为Linux文本处理的"三剑客"。下面将详细总结这三个工具的使用方法和相关知识点。 ### grep grep是用于...
根据给定的部分内容,我们可以进一步了解sed的一些高级用法: 1. **地址选择** - 地址选择用于指定sed命令作用的行范围。 - 示例:`sed '1,5p' file` 表示打印第1到第5行的内容。 2. **模式匹配与替换** - 使用...
在本文中,我们主要探讨了sed和awk两种工具在Linux环境下进行文本处理的各种高级用法,涉及从文件读取数据、字符串处理、字符编码转换和特殊字符替换等多个实用案例。接下来,我们将对各个案例进行详细解析。 首先...
在Linux和Unix系统中,文本处理是一项常见的需求。其中,`sed`(stream editor)和`awk`是两款非常强大的文本处理工具,它们不仅功能强大而且极其灵活。本文将详细介绍这两款工具的基础知识以及一些高级用法,帮助...