Linux日常命令sed

worktile 其他 72

回复

共3条回复 我来回复
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    sed是Linux中非常常用的命令,用于对文本进行编辑和转换。下面是sed命令的一些常见用法和示例:

    1. 替换文本:
    sed ‘s/old/new/g’ file # 将文件file中的所有”old”替换为”new”

    2. 删除文本:
    sed ‘/pattern/d’ file # 删除文件file中包含”pattern”的行

    3. 插入文本:
    sed ‘1i\new line’ file # 在文件file的第一行前插入新行”new line”

    4. 追加文本:
    sed ‘$a\new line’ file # 在文件file的最后一行后追加新行”new line”

    5. 显示文本:
    sed -n ‘2p’ file # 显示文件file的第二行

    6. 执行脚本:
    sed -f scriptfile file # 执行脚本文件scriptfile对文件file进行操作

    7. 替换特定行:
    sed ‘2s/old/new/’ file # 替换文件file的第二行中的”old”为”new”

    8. 替换特定范围的行:
    sed ‘2,4s/old/new/’ file # 替换文件file的第二行到第四行中的”old”为”new”

    9. 只打印匹配的行:
    sed -n ‘/pattern/p’ file # 只打印文件file中包含”pattern”的行

    10. 替换文本并保存到新文件:
    sed ‘s/old/new/g’ file > newfile # 将文件file中的所有”old”替换为”new”并保存到newfile

    以上是对sed命令的一些常见用法进行了简要介绍,sed命令具有强大的文本处理能力,熟练掌握sed命令能提高日常工作的效率。

    2年前 0条评论
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    sed是Linux系统中常用的文本处理工具之一,可以对文本进行增删改查等操作。下面是关于sed的一些日常命令:

    1. 替换文本:
    sed ‘s/old/new/’ file:将文件中的old字符串替换为new字符串。
    sed ‘s/old/new/g’ file:使用g选项可以替换所有匹配的字符串,而不仅仅是第一个。

    2. 打印指定行:
    sed -n ‘1p’ file:只打印第一行。
    sed -n ‘1,5p’ file:打印第一行到第五行。

    3. 删除指定行:
    sed ‘1d’ file:删除第一行。
    sed ‘1,5d’ file:删除第一行到第五行。

    4. 插入或追加文本:
    sed ‘1i\inserted line’ file:在第一行前插入一行文本。
    sed ‘$a\appended line’ file:在最后一行后追加一行文本。

    5. 根据模式匹配:
    sed ‘/pattern/d’ file:删除包含某个模式的行。
    sed ‘/pattern/!d’ file:仅保留包含某个模式的行。

    以上是一些常用的sed命令,可以帮助我们在Linux系统中进行文本处理操作。当然,sed还有更多的命令和选项,可以根据具体的需求进行学习和使用。

    2年前 0条评论
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    sed命令是Linux系统中常用的文本处理工具之一,它可用于对文件进行字符串替换、匹配、删除、插入等操作。本文将从方法、操作流程等方面讲解Linux日常命令sed。

    ## 1. sed命令的基本用法
    sed命令的基本语法为:
    “`
    sed [参数] ‘动作’ 文件名
    “`
    其中,参数可以是以下几种:
    – -e:直接在命令行模式上进行sed动作编辑;
    – -f:将sed的动作写在脚本文件中,使用-f参数指定脚本文件;
    – -i:直接修改文件内容,而不是输出到终端。

    动作是sed命令的核心部分,它可以是以下几种形式之一:
    – s/old/new/:将文本中的old替换为new;
    – /pattern/:匹配包含pattern的行;
    – d:删除匹配到的行;
    – a\,i\:在匹配到的行之后(a)或之前(i)插入文本。

    接下来,我们将通过几个示例来说明sed命令的用法。

    ## 2. 字符串替换
    sed命令最常用的功能之一是字符串替换。通过s命令,我们可以将文本中的特定字符串替换为其他字符串。语法如下:
    “`
    sed ‘s/old/new/’ 文件名
    “`
    示例如下,我们将替换文件中的”apple”为”orange”:
    “`
    $ sed ‘s/apple/orange/’ file.txt
    “`
    如果要替换所有的匹配项,可以在s命令后添加g选项:
    “`
    $ sed ‘s/apple/orange/g’ file.txt
    “`
    此时,所有文件中的”apple”都会被替换为”orange”。

    ## 3. 删除行
    通过sed命令的d命令,可以删除包含指定模式的行。语法如下:
    “`
    sed ‘/pattern/d’ 文件名
    “`
    示例如下,我们将删除文件中包含”apple”的行:
    “`
    $ sed ‘/apple/d’ file.txt
    “`
    多个模式可以用逗号分隔,删除包含其中任何一个模式的行:
    “`
    $ sed ‘/apple,dog/d’ file.txt
    “`

    ## 4. 插入和追加文本
    sed命令的a和i命令可以在匹配到的行后面和前面插入文本。语法如下:
    “`
    sed ‘/pattern/a\
    text’ 文件名

    sed ‘/pattern/i\
    text’ 文件名
    “`
    示例如下,我们将在包含”apple”的行前面插入”fruit”:
    “`
    $ sed ‘/apple/i\
    fruit’ file.txt
    “`
    在文件file.txt中,所有包含”apple”的行之前都会插入”fruit”。

    ## 5. 脚本文件中使用sed命令
    除了直接在命令行模式上使用sed命令,我们还可以将sed的动作写在脚本文件中,并通过-f参数指定脚本文件。

    首先,创建一个名为script.sed的脚本文件,内容如下:
    “`
    s/apple/orange/g
    s/peach/mango/g
    “`
    然后,运行以下命令:
    “`
    $ sed -f script.sed file.txt
    “`
    此时,文件file.txt中的”apple”会被替换为”orange”,”peach”会被替换为”mango”。

    ## 6. 直接修改文件内容
    默认情况下,sed命令只会将结果输出到终端窗口,不会修改原始文件。但是,我们可以通过-i参数直接修改文件内容。语法如下:
    “`
    sed -i ‘s/old/new/’ 文件名
    “`
    示例如下,我们将直接在文件中将”apple”替换为”orange”:
    “`
    $ sed -i ‘s/apple/orange/’ file.txt
    “`
    此时,文件file.txt中的所有”apple”都会被替换为”orange”。

    ## 7. sed命令的高级用法
    除了上述基本用法外,sed命令还有许多高级用法,例如:
    – 只对某些行进行操作:通过行号或行号范围指定要操作的行;
    – 使用正则表达式进行模式匹配:可以使用正则表达式匹配更复杂的模式;
    – 组合多个sed命令:可以通过多个sed命令组合实现更复杂的操作;
    – 引用前一条替换命令:可以使用&符号引用之前的模式匹配结果;
    – 基于替换结果的条件控制:可以使用n和g命令组合进行条件控制。

    以上是对sed命令的一些介绍,通过学习和实践,你可以更好地掌握sed命令,提高文本处理的效率。

    2年前 0条评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部