关于Sed命令随笔

这篇具有很好参考价值的文章主要介绍了关于Sed命令随笔。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.Sed 工作流程

  • 首先sed把当前正在处理的行保存在一个临时缓存区中(也称为模式空间),然后处理临时缓冲区中的
    行,完成后把该行发送到屏幕上。
  • sed把每一行都存在临时缓冲区中,对这个副本进行编辑,所以不会修改原文件。
  • Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等。

2. Sed使用方法

sed常见的语法格式有两种,一种叫命令行模式, 另一种叫脚本模式。

2.1 命令行格式

格式

sed [option] 'sed的命令|地址定位' filename
说明: 引用shell script 中的变量应使用双引号,而非通常使用的单引号
option:
-e 进行多项编辑,即对输入行应用多条sed命令时使用
-n 取消默认的输出
-f 指定sed脚本的文件名
-r 使用扩展正则表达式
-i inplace,原地编辑(修改源文件)

常用命令和选项

p 打印行
d 删除行
i\ 在当前行之前插入文本。多行时除最后一行外,每行末尾需用”\“续行 
a\ 在当前行后添加一行或多行。多行时除最后一行外,每行末尾需用“\”续行
c\ 用此符号后的新文本替换当前行中的文本。多行时除最后一行外,每行末尾需用”\“续行整行替换 
r 从文件中读取输入行
w 将所选行写入文件
s 用一个字符串替换另一个
g 在行内进行全局替换
& 保持查找串以便在替换中引用
= 打印行号

2.2 脚本格式

用法

#sed -f scirpts.sed file	使用脚本处理文件
#建议使用	./sed.sh file
#!/bin/sed -f

注意事项

脚本文件是一个sed的命令行清单。commands 
在每行的末尾不能有任何空格、制表符(tab)或其它文本。 
如果在一行中有多个命令,应该用分号分隔。 
不需要且不可用引号保护命令 
#号开头的行为注释 

Sed 实验

实验内容文章来源地址https://www.toymoban.com/news/detail-839311.html

根据IP自动更改主机名并自动安装vsftpd服务并完成相应配置
1.不支持本地用户登录
2.匿名用户可以上传新建删除
3.匿名用户限速500KBps
#!/bin/bash
#获取IP地址
ip=`ip a | grep -Eo 'inet .* brd' | grep -Eo '[0-9]{1,3}.*\.[0-9]{1,3}'`
ip_end=`echo $ip | sed -E 's/^.*\.//g'`
name="server${ip_end}.itcast.cc"
hostnamectl set-hostname $name
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
sed -i 's/=enforcing/=permissive/g' /etc/selinux/config
yum install vsftpd -y
systemctl start vsftpd
systemctl enable vsftpd
sed -i 's/local_enable=YES/local_enable=NO/g' /etc/vsftpd/vsftpd.conf
sed -i 's/#anon_upload_enable=YES/anon_upload_enable=YES/g' /etc/vsftpd/vsftpd.conf
sed -i 's/#anon_mkdir_write_enable=YES/anon_mkdir_write_enable=YES/g' /etc/vsftpd/vsftpd.conf
sed -i '$a anon_max_rate=500000' /etc/vsftpd/vsftpd.conf
systemctl restart vsftpd

到了这里,关于关于Sed命令随笔的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • AES工作流程

    工作流程 模式 1:加密 ⚫ 复位EN 重置AES模块 ⚫ 设置模式寄存器mode[1:0]=00,设置流数据处理模式寄存器CHMOD[1:0] ⚫ 写AES_KEYRx寄存器,CTR和CBC模式下写AES_IVRx寄存器 ⚫ 写EN=1,使能AES ⚫ 写AES_DINR 寄存器4次 ⚫ 等待CCF标志置起 ⚫ 从AES_DOUTR分4次读出加密结果 ⚫ 对于同一个key,重

    2024年02月01日
    浏览(48)
  • SpringMVC的工作流程

    SpringMVC的工作流程图 SpringMVC的工作流程 1. 用户通过客户端向服务器发送请求,请求会被 SpringMVC的前端控制器DispatcherServlet所拦截。 2. DispatcherServlet拦截到请求后,会调用HandlerMapping处理器映射器。 3. 处理器映射器根据请求URL找到具体的处理器,生成处理器对象及处理器拦

    2024年01月24日
    浏览(50)
  • HTTPS的工作流程

    hi,大家好,好久不见,今天为大家带来HTTPS协议的工作流程 HTTPS也是应用层协议,让我们再来回忆一下TCP/IP五层协议模型 HTTPS 也是一个应用层协议. 是在 HTTP 协议的基础上引入了一个加密层. HTTP协议在传输的时候是以文本的形式传输的,就可能会导致被劫持,这里的劫持包括但不限于

    2024年02月06日
    浏览(64)
  • RabbitMQ工作流程详解

    (1)生产者连接RabbitMQ,建立TCP连接(Connection),开启信道(Channel) (2)生产者声明一个Exchange (交换器),并设置相关属性,比如交换器类型、是否持久化等 (3)生产者声明一个队列井设置相关属性,比如是否排他、是否持久化、是否自动删除等 (4)生产者通过bindingKey (绑定Key) 将交换器

    2024年02月13日
    浏览(46)
  • STM32 工作流程

    工作流程: 上电后,芯片复位启动 MCU通过指令/数据总线从FLASH中读取指令或数据,配合解析执行,然后再通过RAM和通用寄存器(R0~R12的内部寄存器)处理可变数据 根据执行的指令,配置和操作外设的寄存器,从而驱动对应的外设实现具体的功能 配合上层组合逻辑,结合外设

    2024年02月11日
    浏览(41)
  • 软件测试工作流程

    流程体系介绍 在以往的项目工作中,我参与过,需求评审、测试计划制定、测试用例编写、测试用例执行、测试脚本编写、测试脚本的执行,进行回归测试、验收测试、编写阶段性测试报告等工作 需求分析,需求评审(RPD、产品原型图) 制定测试计划、评审测试计划、优化

    2024年02月05日
    浏览(44)
  • 简述springMVC工作流程

    Spring MVC是一个基于Java的开源MVC框架,用于构建Web应用程序。它通过将应用程序分解为模型(Model)、视图(View)和控制器(Controller)三个部分,以提高应用程序的可维护性和可扩展性。以下是Spring MVC的基本工作流程: 客户端发送请求: 客户端通过浏览器或其他客户端发送

    2024年02月05日
    浏览(50)
  • RocketMQ架构和工作流程

    目录 一.MQ概述 1.简介 2.用途 限流削峰 异步解耦  数据收集  3.MQ对比 二. RocketMQ概述 1.基本概念 消息(Message) 主题(Topic) 标签(Tag) 队列(Queue) 消息标识(MessageId/Key)  2.系统架构 Producer Consumer NameServer Broker 工作流程 三.RocketMQ的启动 1.安装JDK 2.配置RocketMQ ①修改Nam

    2024年02月09日
    浏览(45)
  • 图解 ARP协议工作流程

    ARP(Address Resolution Protocol),即地址解析协议。ARP协议是根据IP地址获取物理地址的一个TCP/IP协议。 主机发送信息时将包含目标IP地址的ARP请求广播到局域网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中

    2023年04月08日
    浏览(42)
  • SpringCloud Gateway工作流程

    具体的流程: 用户发送请求到网关 请求断言 ,用户请求到达网关后,由Gateway Handler Mapping(网关处理器映射)进行Predicates(断言),看一下哪一个符合路由规则,选择对应的过滤器进行处理 上面是使用 application.yml 对网关进行路由规则的制定 - id: api_route : 这是路由的标识符

    2024年03月23日
    浏览(29)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包