linux后台执行命令seds

worktile 其他 18

回复

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

    Linux下可以使用`sed`命令在后台执行命令。`sed`是一种流编辑器,用于以文本方式处理文本文件。它可以对文件进行替换、删除、插入、截取等操作。

    要在后台执行`sed`命令,可以使用以下语法:

    “`
    sed ‘s/原始字符串/替换字符串/g’ 文件名 &
    “`

    其中,`s`是替换操作符,`原始字符串`是要被替换的字符串,`替换字符串`是要替换成的字符串,`g`表示全局替换(即替换所有匹配到的字符串),`文件名`是要处理的文件名。最后的`&`符号表示在后台执行命令。

    举个例子,假设要将文件`example.txt`中的所有`old`替换成`new`,可以使用以下命令:

    “`
    sed ‘s/old/new/g’ example.txt &
    “`

    这样,`sed`命令会在后台执行,并将替换结果写入原文件。如果希望将替换结果输出到新文件中,可以使用重定向操作符`>`,如下所示:

    “`
    sed ‘s/old/new/g’ example.txt > new_example.txt &
    “`

    除了替换操作外,`sed`命令还可以执行其他操作,如删除行、插入文本等。具体使用方法可以查阅相关文档或使用`man sed`命令查看`sed`的手册页。

    总结起来,要在Linux后台执行`sed`命令,只需在命令末尾加上`&`符号即可。这样,`sed`命令将在后台运行,不会阻塞终端,同时还可以继续进行其他操作。

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

    在Linux中,可以使用sed命令来修改文本文件中的内容。如果我们希望在后台执行sed命令,可以通过以下几种方式实现:

    1. 使用nohup命令:nohup命令可以将命令在后台运行,并将输出重定向到一个文件。可以使用以下语法来在后台执行sed命令:
    “`
    nohup sed ‘s/pattern/replacement/g’ input_file > output_file &
    “`
    上述命令会将input_file中的文本按照给定的规则进行替换,并将替换后的结果输出到output_file中。

    2. 使用&符号:在命令行中,可以通过在命令末尾加上&符号来使命令在后台运行。例如:
    “`
    sed ‘s/pattern/replacement/g’ input_file > output_file &
    “`
    上述命令会将input_file中的文本按照给定的规则进行替换,并将替换后的结果输出到output_file中。

    3. 使用后台作业控制符:在命令行中,可以使用后台作业控制符来将正在运行的前台命令转为后台运行。可以使用以下步骤来实现:
    a. Ctrl + Z: 暂停正在运行的前台命令;
    b. bg: 将暂停的命令转为后台运行。

    4. 使用screen命令:screen是一个终端复用软件,在Linux系统中非常常见。它可以创建多个虚拟终端,并在其中执行命令。通过以下步骤可以实现后台执行sed命令:
    a. 打开一个新的screen会话:screen;
    b. 在新的screen会话中执行sed命令:sed ‘s/pattern/replacement/g’ input_file > output_file;
    c. 按下Ctrl + A + D将screen会话切换到后台。

    5. 使用tmux命令:tmux是另一个终端复用软件,类似于screen。通过以下步骤可以实现后台执行sed命令:
    a. 打开一个新的tmux会话:tmux;
    b. 在新的tmux会话中执行sed命令:sed ‘s/pattern/replacement/g’ input_file > output_file;
    c. 按下Ctrl + B + D将tmux会话切换到后台。

    以上是在Linux中后台执行sed命令的几种方法。可以根据实际需求选择合适的方法来执行命令。

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

    在Linux中,可以使用sed命令对文本文件进行编辑和转换。sed是一个非交互式的流编辑器,可以通过命令行执行,也可以将其嵌入到shell脚本中。在实际使用中,有时需要将sed命令放在后台执行,可以通过几种方法实现。

    方法一:使用&符号放在命令的末尾
    可以在执行命令时,在命令的末尾添加一个&符号。这将使命令在后台运行,使用终端时不会阻塞。
    “`
    $ sed ‘s/foo/bar/g’ example.txt &
    “`
    在上面的例子中,sed命令将在example.txt文件中将所有的”foo”替换为”bar”,并且在后台运行。

    方法二:使用nohup命令
    nohup命令是Linux系统中的一个实用工具,它可以将命令放在后台运行,并且在用户注销或终端关闭后仍然继续运行。
    “`
    $ nohup sed ‘s/foo/bar/g’ example.txt &
    “`
    与方法一类似,上面的命令将在example.txt文件中将所有的”foo”替换为”bar”,并且在后台运行。使用nohup命令,即使关闭终端,sed命令也会继续运行。

    方法三:使用screen命令
    screen是一个非常有用的工具,它可以创建多个虚拟终端,并且可以在多个终端之间切换。使用screen命令,可以将命令放在一个新的虚拟终端中并在后台运行。
    “`
    $ screen
    $ sed ‘s/foo/bar/g’ example.txt
    “`
    使用上述命令,可以将sed命令放在一个新的screen会话中,并在后台运行。要关闭screen会话,可以使用Ctrl+A,然后按下d键。

    总结
    根据需要,可以选择适合的方法来在Linux中后台执行sed命令。方法一和方法二比较简单,而方法三则更强大并且提供了更多的功能。

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

400-800-1024

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

分享本页
返回顶部