首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Linux基础——正则表达式

2、删除行:d命令 从某文件中删除包含 "how" 的所有行 ? 将/etc/passwd的内容显示并找印行号,同时将 2~5 删除 ? 附:nl 命令在 linux 系统中用来计算文件中行号。...nl 可以将输出的文件内容自动的加上行号如果只要删除第 2行,可以使用 nl/etc/passwd|sed '2d' 来达成,至于若是要删除第 3到最后一行, 则是 nl/etc/passwd |sed...如果只是显示/etc/passwd 文件中的用户名和登录shell, 而账户与 shell 之间以逗号分割 ? 注:awk 的总是输出到标准输出,如果想让 awk 输出到文件,可以使用重定向。...如果想快速查看所有文件的长度及其总和,但要排除子目录,如何实现: ? 六、函数及脚本的综合应用 1、shell 函数:shell 允许将一组命令集或语句形成一个可用块,这些块称为 shell函数。...3、举例: 例 1:删除文件中的空行 这个脚本(脚本名为del.lines)可以处理一个或多个文件。每个文件在用sed删除空行之前要先核实是否存在。

4.3K30

shell脚本扩展「建议收藏」

nl 可以将输出的文件内容自动的加上行号 如果只要删除第2行,可以使用nl /etc/passwd | sed ‘2d’ 来达成,至于若是要删除第 3 到最后一行,则是nl /etc/passwd |...iput_files可以是多于一个文件的文件列表,awk将按顺序处理列表中的每个文件。 在awk中,文件的每一行中,由域分隔符分开的每一项称为一个域。...2.shell脚本方式 将所有的awk命令插入一个文件,并使awk程序可执行,然后awk命令解释器作为脚本的首行,以便通过键入脚本名称来调用。 相当于shell脚本首行的:#!...入门实例: 例1:显示/etc/passwd文件中的用户名和登录shell 如果只是显示/etc/passwd的账户和账户对应的shell,而账户与shell之间以tab键分割 如果只是显示/etc...,填充域,0则表示所有域,1表示第一个域, 思考题:如何打印所有记录(以/etc/passwd中的内容为例) 例4:搜索/etc/passwd有root关键字的所有行 这种是pattern(模式)的使用示例

5.8K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    shell脚本实例

    3个长度子串  substr(string,子串的第一个字符所在位置,子串的字符数)  使用sed执行简单查找和替换:  # echo $hello  | sed -e "s/y/xxb/g"  #...从未知的串中抽取特定字符或者连续字符更具有挑战。这时其实使用sed就更有特色了。  使用sed显示基于字符的域:       可以使用sed基于字符模式而不是基于域来进行字符串分隔。...}{pNR=NR;p0=$0}' /etc/passwd  第一个命令在文件中查找模式串,当处理文件中的每一行内容时,分别在变量p0和pNR中存储匹配行之前的一行和该行的记录数(awk的内部变量NR表示当前输入行中的记录数...脚本中调用脚本,其实就是将自己的脚本加入到当前的环境中,然后使用....join hello hello1         将两个文件中相同部分的文字结合起来输出到终端 shell脚本实际说来就是用于系统管理和文件操作用的,能够方便自如的处理大量重复性的工作。

    3.2K60

    debian12ubuntu242220 shell 脚本自动编译web安装网站环境 nginx1.26.0 php78 mariadb1011

    以 systemd 方式设置开机启动 # mysql 重置 root 密码,创建 或删除 mysql 子库和子用户 downDir="/datadisk/eisc/download" ; installdir.../etc/my.cnf 不能为 777 否则mysql 无法启动; # 设置web 网站路径 和 nginx conf 子站点路径 echo " 欢迎使用自动安装 网站web 环境shell 脚本...# php的ip通讯模式 $sudoc sed -i "$NR d" $rundir/etc/php-fpm.d/www.conf else echo "[noset] listen...www 000000 localhost 1 创建 or 删除,输入: create 或 drop 2 数据库 root 用户密码 3 子数据库名 4 子库用户名 5 子库密码...----- 查看写入的开机启动脚本 -------------------#" cat /etc/init.d/shell/start.sh $sudoc chmod +x /etc/init.d

    82930

    史上最全的 Linux Shell 文本处理工具集锦,快收藏!

    来自:大CC 链接:www.cnblogs.com/me15/p/3427319.html 本文将介绍Linux下使用Shell处理文本时最常用的工具: find、grep、xargs、sort、uniq...、tr、cut、paste、wc、sed、awk; 提供的例子和参数都是最常用和最为实用的; 对shell脚本使用的原则是命令单行书写,尽量不要超过2行; 如果有更为复杂的任务需求,还是考虑python...-c '0-9' //获取文件中所有数字cat file | tr -d -c '0-9 ' //删除非数字数据 tr压缩字符 tr -s 压缩文本中出现的重复字符;最常用于压缩多余的空格 cat...shell命令的输出读入到变量cmdout中; echo | awk '{"grep root /etc/passwd" | getline cmdout; print cmdout }' 在awk中使用循环...迭代文件中的每一行 while 循环法 while read line;doecho $line;done < file.txt 改成子shell: cat file.txt | (while read

    4K50

    Linux Shell 文本处理工具集锦

    本文将介绍Linux下使用Shell处理文本时最常用的工具:find、grep、xargs、sort、uniq、tr、cut、paste、wc、sed、awk; 提供的例子和参数都是最常用和最为实用的;...' //获取文件中所有数字 cat file | tr -d -c '0-9 \n' //删除非数字数据 tr压缩字符 tr -s 压缩文本中出现的重复字符;最常用于压缩多余的空格 cat file...] [example] 子串匹配标记 第一个匹配的括号内容使用标记 \1 来引用 sed 's/hello\([0-9]\)/\1/' 双引号求值 sed通常用单引号来引用;也可使用双引号,使用双引号后...shell命令的输出读入到变量cmdout中; echo | awk '{"grep root /etc/passwd" | getline cmdout; print cmdout }' 在awk中使用循环...$line; done < file.txt 改成子shell: cat file.txt | (while read line;do echo $line;done) awk法: cat file.txt

    3.3K70

    Shell大全:可以应用于工作及面试

    但是这距离我们使用Shell编程,还是有一定距离的。 本文主要针对零基础、面试Shell不知道该如何补充这方面的知识,以及工作中想学习Shell的老铁。...sed -i ‘s/old/new/’filename 其中-i表示在本地直接对源文件中的内容作出修改 还有其他功能比如删除文件的某些特征行,某些变量前添加内容。...一、取出/etc/passwd文件中shell出现的次数 问题: 下面是一个/etc/passwd文件的部分内容。...grep -v选取当前登录用户以外的所有用户。awk打印用户进程ID。sort -u会删除相同的行。最后用kill命令终止。...五、百度脚本面试题 问题: 1)写脚本实现,可以用shell、perl等。在目录/tmp下找到100个以abc开头的文件,然后把这些文件的第一行保存到文件new中。 参考答案1: #!

    87050

    Linux文本处理工具,看这篇就够了。

    作者:大CC原文:www.cnblogs.com/me15/p/3427319.html 本文将介绍Linux下使用Shell处理文本时最常用的工具: find、grep、xargs、sort、uniq...、tr、cut、paste、wc、sed、awk; 提供的例子和参数都是最常用和最为实用的; 对shell脚本使用的原则是命令单行书写,尽量不要超过2行; 如果有更为复杂的任务需求,还是考虑python...-c '0-9' //获取文件中所有数字cat file | tr -d -c '0-9 ' //删除非数字数据 tr压缩字符 tr -s 压缩文本中出现的重复字符;最常用于压缩多余的空格 cat...shell命令的输出读入到变量cmdout中; echo | awk '{"grep root /etc/passwd" | getline cmdout; print cmdout }' 在awk中使用循环...迭代文件中的每一行 while 循环法 while read line;doecho $line;done < file.txt 改成子shell: cat file.txt | (while read

    4.5K10

    linux运维中的命令梳理(三)

    awk语言的最基本功能是在文件或者字符串中基于指定规则浏览和抽取信息,awk抽取信息后,才能进行其他文本操作。完整的awk脚本通常用来格式化文本文件中的信息。 通常,awk是以文件的一行为处理单位的。...input-file(s) 是待处理的文件。 在awk中,文件的每一行中,由域分隔符分开的每一项称为一个域。通常,在不指名-F域分隔符的情况下,默认的域分隔符是空格。...2.shell脚本方式 将所有的awk命令插入一个文件,并使awk程序可执行,然后awk命令解释器作为脚本的首行,一遍通过键入脚本名称来调用。 相当于shell脚本首行的:#!...如果只是显示/etc/passwd的账户和账户对应的shell,而账户与shell之间以tab键分割 #cat /etc/passwd |awk -F ':' '{print $1"\t"$7}'.../etc/passwd 内容是以 : 来分隔的,我想以第三栏来排序,该如何 [root@www ~]# cat /etc/passwd | sort -t ':' -k 3 root:x:0:0:root

    8.1K81

    搞定Linux Shell文本处理工具,看完这篇集锦就够了

    Linux Shell是一种基本功,由于怪异的语法加之较差的可读性,通常被Python等脚本代替。既然是基本功,那就需要掌握,毕竟学习Shell脚本的过程中,还是能了解到很多Linux系统的内容。...Linux脚本大师不是人人都可以达到的,但是用一些简单的Shell实现一些常见的基本功能还是很有必要的。...下面我介绍Linux下使用Shell处理文本时最常用的工具: find、grep、xargs、sort、uniq、tr、cut、paste、wc、sed、awk; 提供的例子和参数都是最常用和最为实用的...shell命令的输出读入到变量cmdout中; echo | awk '{"grep root /etc/passwd" | getline cmdout; print cmdout }' 在awk中使用循环...迭代文件中的每一行 while 循环法 while read line;doecho $line;done 子shell:cat file.txt | (while read line

    6.4K41

    运维面试题(每日一题)

    -bash-4.1的原因及解决办法 2、如何删除多个文件中包含的空格或其他特殊字符,怎么做 3、CPU使用率超过80%或硬盘超过85%邮件报警 4、监控学校的网络出口正常性,需要写一个脚本,操作系统每30...5、如何快速删除Linux中海量小文件 6、如何统计脚本执行的时间?...6、显示指定行内容 7、查找当前目录下所有文件,并把文件中的 www.baidu.com 字符串替换成 www.abc.cc 第九周 1、sudo su 和 su 2、如何把文件中的空行过滤掉 3、查看命令路径...5.实现172.16.1.0/24段所有主机通过124.32.54.26外网IP共享上网 第十二周 1.优化shell脚本 2.如何让linux也像windows那样有一个回收站,避免数据的误删除,进而恢复误删数据...❤shell知识点:shell脚本中字符串截取 假设有变量 var=http://www.koloredu.com/123.htm. 1. # 号截取,删除左边字符,保留右边字符。

    5.2K22

    《Linux与unix Shell编程指南》 总结

    如果希望向at命令提交一个shell脚本,使用其命令行方式即可。在提交脚本时使用- f选项。...: grep –i "被查找的字符串" 文件名 5)查找匹配的行数: 7)递归查找目录/etc/apache2下的文件内容“"\/var\/www”:grep "\/var\/www" -i /etc...∗\n\1$/\1/; t; D' # 删除文件中开头的10行 sed '1,10d' # 删除文件中的最后一行 sed '$d' # 删除文件中的最后两行 sed 'N;$!P;$!...# 文件必须以特定顺序传给sed。下面第一种版本的脚本可以直接在命令行下输入; # 第二种版本则可以放入一个带执行权限的shell脚本中。(由Rahul Dhesi的一 # 个脚本修改而来。)...# 文件必须以特定顺序传给sed。下面第一种版本的脚本可以直接在命令行下输入; # 第二种版本则可以放入一个带执行权限的shell脚本中。(由Rahul Dhesi的一 # 个脚本修改而来。)

    5.5K30

    sed的用法详解

    /' a.txt 将文件中每行的第一个和第二个字符互换 sed -r 's/^(.)(.)(.*)/\2\1\3/' a.txt 将文件中每行的第一个和第二个单词互换 sed -r 's/([a-Z]+...sed -r s/[A-Z]/(&)/g a.txt 2.sed应用案例 a.修改系统的默认运行级别 sed -i '/^id:/s/5/3/' /etc/inittab 修改IP地址:将配置文件中的192.168.1...常用命令选项: -F:指定分隔符,可省略 默认为空格或Tab位 -f:调用awk脚本进行处理 -v:调用外部shell命令 awk内置变量,有特殊含义,可直接使用 FS:保存或设置字段分隔符,例如FS...,行号 FILENAME:当前处理的文件名 ENVIRON:调用Shell环境变量,格式 ENVIRON["变量名"] awk '' /etc/passwd awk -F ":" '' /etc/passwd...dowhile(条件) for循环: for(初值;条件;步长) cat sshd.txt |awk '}' 统计/etc/passwd中root出现的次数 awk -F[:/] 'BEGIN;i++}

    4.3K31

    linux常用命令

    (流编辑器) sed叫做流编辑器,在shell脚本和Makefile中作为过滤一使用非常普遍,也就是把前一个程序的输出引入sed的输入,经过一系列编辑命令转换成为另一种格式输出。...-F指定域分隔符为':' 4、显示/etc/passwd的账户和账户对应的shell,而账户与shell之间以tab键分割 [root@localhost ~]# cat /etc/passwd |awk...搜索支持正则,例如找root开头的: awk -F: '/^root/' /etc/passwd 搜索/etc/passwd有root关键字的所有行,并显示对应的shell awk -F ':'...可以用它来输出最后一个域 FS:设置输入域分隔符,等价于命令行-F选项 OFS:输出域分隔符 统计/etc/passwd:文件名,每行的行号,每行的列数,对应的完整行内容 awk -F ':' '{...(最简单,最常用) [root@hadoop ~]# echo ${#WEBSITE} 35 4、Shell脚本自动安装MySQL 安装mysql脚本: #!

    2.2K10

    搞定 Linux Shell 文本处理工具

    本文将介绍Linux下使用Shell处理文本时最常用的工具:find、grep、xargs、sort、uniq、tr、cut、paste、wc、sed、awk; 提供的例子和参数都是最常用和最为实用的;...| tr -c '0-9' //获取文件中所有数字 cat file | tr -d -c '0-9' //删除非数字数据 tr压缩字符 tr -s 压缩文本中出现的重复字符;最常用于压缩多余的空格...:将文本中每行内容(PEKSHA) 转换为 PEK/SHA sed 's/^.{3}/&//g' file 10、awk 数据流处理工具 awk脚本结构 awk ' BEGIN{ statements...shell命令的输出读入到变量cmdout中; echo | awk '{"grep root /etc/passwd" | getline cmdout; print cmdout }' 在awk中使用循环...line; done < file.txt 改成子shell: cat file.txt | ( while read line; do echo $line; done ) awk法: cat

    1.7K10

    搞定 Linux Shell 文本处理工具的操作命令

    本文将介绍Linux下使用Shell处理文本时最常用的工具:find、grep、xargs、sort、uniq、tr、cut、paste、wc、sed、awk;提供的例子和参数都是最常用和最为实用的...;对shell脚本使用的原则是命令单行书写,尽量不要超过2行;如果有更为复杂的任务需求,还是考虑python吧. 1、find 文件查找 查找txt和pdf文件 find . ( -name "*.txt...tr -c  '0-9'   //获取文件中所有数字 cat file | tr -d -c '0-9'  //删除非数字数据 tr压缩字符 tr -s 压缩文本中出现的重复字符;最常用于压缩多余的空格...shell命令的输出读入到变量cmdout中; echo | awk '{"grep root /etc/passwd" | getline cmdout; print cmdout }' 在awk中使用循环...; done < file.txt 改成子shell: cat file.txt | ( while read line; do  echo $line; done ) awk法: cat file.txt

    2.5K20

    Shell笔记5:sed用法详解

    ,地址可以表示为文本的行号,或者匹配的正则表达式 sed -n '2,4p' /etc/hosts 基本的处理动作 p 打印 2,4p 2p;4p d 删除 2,4d 删除第234行 s 字符串替换 s...[^a-Z]*)$/\1/' a.txt 将文件中每行的第一个和第二个字符互换 sed -r 's/^(.)(.)(.*)/\2\1\3/' a.txt 将文件中每行的第一个和第二个单词互换 sed -.../ifcfg-eth0 修改网站根目录:将/var/www/html修改为/opt/wwwroot sed -ri 's#/var/www/html#/opt/wwwroot#' /etc/httpd/...‘{print $1,$2}’ /etc/passwd 常用命令选项: -F:指定分隔符,可省略 默认为空格或Tab位 -f:调用awk脚本进行处理 -v:调用外部shell命令 awk内置变量,有特殊含义...,行数 FNR:保存当前处理行在原文本内的序号,行号 FILENAME:当前处理的文件名 ENVIRON:调用Shell环境变量,格式 ENVIRON["变量名"] awk '{print 第“FNR”

    1.4K10

    Linux-四剑客-find-awk-grep-sed解释----未完结版

    ,系统中不允许存在 -delete 查到之后删除(比较危险) !...[root@backup tmp]# sed "/3/d" 1.txt #删除匹配到的行 1 2 4 5 [root@backup tmp]# sed "2,4d" 1.txt #删除指定位置的行...input-file(s) 是待处理的文件。 在awk中,文件的每一行中,由域分隔符分开的每一项称为一个域。通常,在不指名-F域分隔符的情况下,默认的域分隔符是空格。...shell脚本方式 将所有的awk命令插入一个文件,并使awk程序可执行,然后awk命令解释器作为脚本的首行,一遍通过键入脚本名称来调用。 相当于shell脚本首行的:#!.../bin/awk 将所有的awk命令插入一个单独的文件,然后调用 awk -f awk-script-file input-file(s) 其中,-f选项加载awk-script-file中的awk脚本

    2.4K30
    领券