如何在Linux中使用sed命令

  介绍

如何在Linux中使用sed命令?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

sed  & # 39; s/一/二/舌鳎# 39;,linuxidc  linuxmi

如何在Linux中使用sed命令

例如,这个Linux sed命令可以帮助您定位和创建配置文件的新版本。当这些函数作为脚本的一部分运行时,它们是可重复的和一致的,并且您可以快速实现更改。

但是sed的主要目的是更改文本文件的内容。它使用了一些重要的命令行开关。/s表示搜索,该命令以/g分隔。我开关在适当的位置上运行命令——它直接修改文件。

sed 小姐;& # 39;s/Port  22/Port  10000/舌鳎# 39;,/etc/ssh/sshd_config

如何在Linux中使用sed命令

在此示例中,/etc/ssh/sshd_config文件中Secure Shell服务器中使用的端口号从默认端口22更改为端口10000。

<强>使用Linux sed命令进行文件更改

可以使用sed编辑文件,但有点不满意。临时编辑可能会导致问题,因为sed无法访问完整的源代码,也无法识别错误或拼写错误。此外,这样做会使原始文件处于危险之中,因为一旦您更改了原始代码,就无法恢复原始代码。

您可以使用- e开关一次指定多个更改。同样,sshd_config。参看文件使得更改多行变得简单。下面的脚本可能看起来很复杂,但操作系统只是传递多个sed更改数据包,每个数据包前缀为- e。

使用sshd_config文件,您可以更改端口号,禁用密码身份验证并一步启用公钥身份验证。

sed 小姐;-e  & # 39; s/Port  22/Port  10000/舌鳎# 39;,-e  & # 39;   s/PermitRootLogin 是的/PermitRootLogin  no/舌鳎# 39;,-e  & # 39;   s/PasswordAuthentication 是的/PasswordAuthentication  no/舌鳎# 39;,-e  & # 39;   s/# PasswordAuthentication  no/# PasswordAuthentication  no/舌鳎# 39;,/etc/ssh/sshd_config

如何在Linux中使用sed命令

搜索和替换功能在新的一行;用\分解命令不起作用,因为sed将其视为特殊字符。

<强>结合sed中的提示

您还可以将多个Linux sed命令链接在一起以更改应用程序的位置。手动修改文件路径有很大的错误空间,但自动化它可以使生活更轻松。

用作分隔符的反斜杠可能不适用于某些脚本,但sed允许您更改分隔符。例如,假设您有一个名为例子。相依的日志文件,其中包含以下内容:

logpath =,/var/log/mylogfile.log

将此路径更改为<代码>/我的/备用/道路/newlog。日志> sed 小姐;& # 39;s |/var/log/mylogfile.log |/我/备用/道路/newlog.log |舌鳎# 39;示例。参看

使用Linux sed命令的其他方法包括使用^ # MyComment为搜索模式添加前缀;这会搜索以# MyComment开头的行。您可以在输出端使用它,以便创建一个新行来替换现有的一行。您还可以使用美元字符在行尾查找内容。

要查看更高级的示例,请使人用sed命令。它提供了更详细的命令和语法分解。



如何在Linux中使用sed命令

<强>总结


看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。

如何在Linux中使用sed命令