Linux-35-liunx基础重要命令12(L005-17)

详解awk命令(接例11):

1.命令1:awk  ‘{if (NR>19&&NR<31) print  $0}’  ett.txt

其中NR是行号,$0表示所有行内容(如果只输出第一行就是$1,第二行就是$2……所有行就是$0),所以该命令就是先筛选出ett.txt文件内行号大于19而且行号小于31的所有行,然后输出整行,

2.命令2:awk  ‘{if(NR==19) print  $0}’  ett.txt

打印输出ett.txt文件中第19行内容,

【sed和awk总结】

sed擅长打印输出行

awk擅长打印输出列

例12.将linux系统根目录及其子目录下所有名称为ett.txt的文件中包含haha的字符串全部替换为xixi。

解答:

(1)将字符串haha追加到ett.txt中,

查看ett.txt文件内容,发现原来的1~100自然数序列没了,现在只有字符串haha,

将ett.txt文件拷贝到/etc目录和/opt目录下,

那么此时linux系统内一共有3个ett.txt文件(根目录下1个,/etc目录下1个,/opt目录下1个,一共3个),

(2)采用sed  s#haha#xixi#g ett.txt命令修改,其中s表示编辑替换,g表示全部替换,前两个#之间是待修改内容,后两个#之间是修改结果,即#待修改内容#修改结果#,

查看ett.txt文件,

发现上面只是改了打印输出内容,而原文件里面内容没有修改,

(3)只需要在上面命令加上-i即可,-i表示修改文件内容,即用如下命令:

sed  -i s#haha#xixi#g  ett.txt

查看ett.txt文件,

发现ett.txt文件内容已被修改,

(4)如何将linux系统内的3个ett.txt一起修改内容呢?可以借助find命令,首先我们用find命令从根目录开始查找所有文件名为ett.txt的文件,

(5)综上,本题答案为:

find / -type f –name “ett.txt” | xargs sed –i s#haha#xixi#g

其中管道|之前是从根目录开始查找出当前系统内所有名称为ett.txt的文件,管道|之后是将查询到的所有文件中haha改为xixi,

查询修改结果,

修改成功。

时间: 2024-10-07 05:29:51

Linux-35-liunx基础重要命令12(L005-17)的相关文章

linux课上基础的命令

1.mkdir  创建目录 创建目录 ===> make directory  ====>  mk  dir   ====>mkdir mkdir  /data -p 递归创建目录 2.ls   list  列表 列出目录中内容 -l(字母)  long 长格式,详细信息 -d  directory    查看目录(把目录当做普通文件对待) 3.cd  进入目录 chage directory 改变当前正在使用的目录 cd /data 4.pwd  指南针,显示你当前的位置,print

Linux网络配置基础及命令使用

网络基础少不了,了解基本概念 MAC:Media Access Conctrol     网卡设备的固定且唯一的硬件地址,用于局域网通讯主机识别            IP:Internet Protocol     由网络号和主机号组成的通讯地址标识,用于界定源和目标主机 DNS:Domain Name System     1.DNS服务器是域名系统,用于解析主机名,实现基于主机名的通讯 2.全球的DNS服务器的域名数据都是相同的,备用DNS的作用是主DNS不可用时(挂掉)顶上,并非在主DN

Linux下MySQL基础使用命令

www.mysql.com 官方网站 communlty server 社区版  免费的 显示系统自带的mysql包 yum list | grep mysql 安装mysql: yum install -y mysql-server mysql mysql-devel 看按的版本: rpm -qi mysql-server 初始化: service mysqld start    /restart 设置密码: mysqladmin -u root password '密码' 开机启动: chk

Linux安装与基础命令

首先准备一个liunx镜像和一台安装好虚拟机的电脑. 配置好虚拟机,选在稍后安装.选择镜像文件,开启虚拟机进行安装. 配置yum源.首先插入光盘.由于是虚拟机,用的光盘镜像, 在/mnt/下面创建一个文件夹yum .      复制所有光盘里的内容到/mnt/yum   cp -rf /media/RHEL_5.9\ x86_64\ DVD/*  /mnt/yum 用vim编辑器配置文件   vim /etc/yum.repo.d/rhel-debuginfo.repo 配置如下: [rhel]

第十三天(linux常用的基础命令 )

按照下面的要求创建一个新的逻辑卷:    *) 逻辑卷命名为database, 属于 datastore 卷组.    *) 在 datastore卷组中的逻辑卷,500M.    *)使用{ext3|ext4|xfs}文件系统对新的逻辑卷进行格式化    *)逻辑卷应该在系统启动的时候自动挂载在/mnt/database 目录下.    *)lvm扩大至1G, 并且保留其原有资料的完整性; 新增加一个 SWAP 分区    *) 大小为512MB,    *) 使该 SWAP 能够每次开机生效

Linux运维基础命令笔试题--看看你会多少?

老男孩Linux运维基础2728期课后学习效果上机闭卷考试题详解 http://edu.51cto.com/course/course_id-5577.html 如果你觉得不错,请为他点赞和评价.这样可以激发他更强的回报小伙伴的欲望!   老男孩教育linux运维就业班第一周课后学习效果能力上机大考察 (每题10分共130分,过100即可,请给出详细步骤) 1.创建目录/data/oldboy ,并且在该目录下创建文件oldboy.txt,然后在文件oldboy.txt里写入内容"inet ad

【系统知识点】linux基础&优化命令

Xshell上传下载服务器的文件: yum -y install lrzsz sysstat//安装对应软件 sz XXXX//下载 rz XXXX//上传 创建用户: Useradd vrfxie //创建用户 -c comment 指定一段注释性描述. -d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录. -g 用户组 指定用户所属的主用户组. -G 用户组,用户组 指定用户所属的附加组. -s Shell文件 指定用户的登录Shell. #可以设置为/sbin

linux简介和基础命令使用

1.按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别. linux主流发行版本主要有 slackware系列:主要代表有S.u.S.E,openSUSE openSUSE:根据使用者的不同,可选择适用于各自的版本. debian系列:主要衍生分支ubuntu,mint ubuntu:在国内名气较大,使用广泛,其突出特点使用简单,容易上手.可为装完就能用 mint:基于ubuntu,显著特点安装时可选择桌面环境后,即可使用,简单,方便易用 redhat系列:主要代表rehl,Cent

Linux基础文件管理命令之ls,cd

Linux中提供了大量的命令,使用他们可以简化我们的工作,也许在图形化界面中要点击鼠标十几下操作,而在linux系统中一条命令就可以轻松解决.所以,在Linux系统上工作离不开使用系统提供的命令.要想真正理解Linux系统,就必须从Linux命令学起. linux系统中的命令格式一般如下: 命令格式:   命令  选项  参数     选项:       短选项: -       多个选项可以组合:-a -b = -ab       长选项: -- 参数:命令的作用对象 下面主要介绍ls和cd命