二、shell对文本的操作
01.查看文本的命令
#cat /etc/passwd(并非对文本文件操作)
#tail -5 /etc/passwd(查看末尾5行)
#tail -f /var/log/messages(对日志文件监视)
02.使用正则表达式的命令
#cat 
sdkjfalkdsjf
sdkjfalkdsjf
ieakjnhgalkdsjlk
ieakjnhgalkdsjlk
#grep aaaa  (具有筛选的作用)
ald;sjflkajds
asdkjflajsdf
sadfa
aaaasdfadffds
aaaasdfadffds
#grep -R -l
#grep byf /etc/passwd
byf:……:…:…
byf123:……:…:…
#grep '\<byf\>' /etc/passwd(筛选)
byf:……:…:…
#cut -d: -f1 /etc/passwd | grep byf(截断)
byf
byf123
#grep byf /etc/passwd | cut -d : -f7(截断+筛选)
/bin/bash
/bin/bash
#cut -d: -f7 /etc/passwd(查看所有用户的主目录)
#sort -t: +2(从第二列开始) -n(ASCII码值排列) /etc/passwd
(按照这个要求保存?否)
#sort -t: +2(从第二列开始) -n(ASCII码值排列) -r(反向排序) /etc/passwd
#sort -t: +2(从第二列开始) -n(ASCII码值排列) /etc/passwd > /tmp/a
#cat /tmp/a(在a这个文件中排列好)
#du(显示文件属性) | sort
1172
1198
12
123
13 
#du(显示文件属性) | sort -n -r 
降序排列
#du | sort | -n -r |head -n 3 |cut -f2 (显示文件属性,降序排列,头3条,第二列内容)
#grep -R (对文件以及子文件筛选)
#grep -R -l(只显示文件名) ‘文件名’
#grep -v(不包含改文件名的查找出来) -l -R -c(行号) -A2 -D2
#cut -d: -f2-4 -c1-5
#sort -n -r -t +2
#grep -A5(显示下文的5行) -B5(显示上文的5行) byf /etc/passwd
#wc /etc/passwd
42 67 1925 /etc/passwd
#wc -l(行) /etc/passwd
42 /etc/passwd
#wc -w(单词) /etc/passwd
67 /etc/passwd
#wc -c(字符) /etc/passwd
1925 /etc/passwd
#cut -d: -f7 /etc/passwd
(把大家的shell显示出来)
#cut -d: -f7 /etc/passwd |uniq(每种shell只显示一种)
#cut -d: -f7 /etc/passwd |sort|uniq(排序+只显示一种)
#cut -d: -f7 /etc/passwd |uniq|wc -l(显示行号)
#diff a.txt b.txt(比较a和b文件的区别)
文件版本不同时:
uniq
diff
patch -p0 < patch.2.6.20
#locate -r "正则表达式"
#grep 'byf' /etc/passwd
#echo *  (是一个文件名)
#echo '*'
*
#grep 's.*k'(包含s,k中间任意多个字符)
#grep 'sherk$' a (以sherk结尾的字符串)
#grep '^sherk' a (以sherk开头的字符串)
匹配单个字符 ‘\.’,'\*'
匹配一个单词 '\<s..k\>'
匹配以aaa开头的单词 '\<aaa'
匹配18个a开头的单词 'a\{18\}'
#vi /usr/shre/dict/words
#grep '.\{40,\}'  name  (四十个字符以上的单词)
#grep '^i.\{18\}n$'
#vi /etc/squid/squid.conf(配置信息)
#grep -v(不包含) '^#' /etc/squid/squid.conf | grep -v '^$'(去掉空格)| wc -l(显示行号)
#%s/byf/tttttt/g(替换全文的byf为tttttt)
#%s/byf\/tttttt/g
#locate -r '正则表达式'
#grep '^[abc]' /etc/passwd(以a或b或c开头的单词)
#grep '^[^a-c]' /etc/passwd (不是以a,b,c开头的单词)
.
.*
^a
a$
\<good
Sh\>
[abc]
[^abc]
a*表示空、a,aa,aaa,……
a?表示一个或零个单独的a
a+表示a,aa,aaa,……
a\{n\} 表示重复了n次的a

Linux shell入门基础(二)的更多相关文章

  1. Linux shell入门基础(六)

    六.Shell脚本编程详解 将上述五部分的内容,串联起来,增加对Shell的了解 01.shell脚本 shell: # #perl #python #php #jsp 不同的脚本执行不同的文本,执行 ...

  2. Linux shell入门基础(一)

    Linux shell入门基础(一): 01.增加删除用户: #useradd byf   userdel byf(主目录未删除)  userdel -r byf   该用户的属性:usermod 用 ...

  3. Linux shell入门基础(八)

    八.shell脚本sed&awk 01.sed的使用 流编辑器-Steam Editor #ed /etc/passwd 1,10p …… 1s/root/byf/p(替换root为byf) ...

  4. Linux shell入门基础(五)

    五.bash运算及启动脚本 01.使用bash的命令历史 #history …… #set(显示所有的变量) | grep HIS HISTFILE=/root/.bash_history HISTF ...

  5. Linux shell入门基础(三)

    三.输入输出重定向及管道 01.过滤器   Linux过滤器分三种:     1.过滤器(重定向只对过滤器有作用) #gzip a(将a作为输入源,涉及到输入输出)     2.编辑器     3.交 ...

  6. Linux shell入门基础(七)

    七.bash脚本中的流程控制   条件判断控制   -[]([]中的表达式是否为真)  &&(前边的结果是true的时候执行后边的命令)   ||(前边的结果是false的时候执行后边 ...

  7. Linux shell入门基础(四)

    四.进程优先级前台后台 01.进程控制 #find /name aaa & #ps aux | grep find #updatedb &  #ps aux | grep update ...

  8. Linux shell脚本基础学习详细介绍(完整版)二

    详细介绍Linux shell脚本基础学习(五) Linux shell脚本基础前面我们在介绍Linux shell脚本的控制流程时,还有一部分内容没讲就是有关here document的内容这里继续 ...

  9. 1)Linux程序设计入门--基础知识

    )Linux程序设计入门--基础知识 Linux下C语言编程基础知识 前言: 这篇文章介绍在LINUX下进行C语言编程所需要的基础知识.在这篇文章当中,我们将 会学到以下内容: 源程序编译 Makef ...

随机推荐

  1. jquery mobile listview列表属性(搜索自动填充检索效果)

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name ...

  2. jQuery 做好七件事帮你提升jQuery的性能

    1. Append Outside of Loops 凡是触及到DOM都是有代价的.如果你向DOM当中附加大量的元素,你会想一次性将它们全部附加进来,而不是分多次进行.当在循环当中附加元素就会产生一个 ...

  3. thinkphp 文件下载实例 实现以及注意事项

            #下载        function download()        {             $id=$_GET['id'];              $file_name ...

  4. Egret 文本处理

    常规处理: private createGameScene():void { var shp = new egret.Shape(); shp.graphics.beginFill(0xff0000, ...

  5. UGUI穿透3D世界判断&&UGUI全事件监听

    public bool isPointUI(){ PointerEventData eventDataCurrnt = new PointerEventData (EventSystem.curren ...

  6. JMS 问题java.lang.NoClassDefFoundError: weblogic/security/acl/UserInfo

    run: Exception in thread "main" java.lang.NoClassDefFoundError: weblogic/security/acl/User ...

  7. 跨站脚本(XSS)

    跨站脚本: cross-site scripting或者XSS, 即攻击者向目标Web站点注入HTML标签或者脚本 如果网站没有通过移除任何嵌入的HTML标签来消毒,那么web页面很容易受到跨站脚本攻 ...

  8. Hbase 计数器

    Hbase计数器可以用于统计用户数,点击量等信息 基本操作 可以使用incr操作计数器,incr语法格式如下: incr '<table>', '<row>', '<co ...

  9. “/”应用程序中的服务器错误。 / c:\windows\temp目录权限设置

    说明: 1 对该目录的权限是ASP.net生成编译运行的临时文件需要,ASP不需要这个目录是因为ASP的脚本代码是解释执行. 2 Windows2003默认的设置是可以正常运行ASP.net的,造成问 ...

  10. Flatten Binary Tree to Linked List ——LeetCode

    Given a binary tree, flatten it to a linked list in-place. For example,Given 1 / \ 2 5 / \ \ 3 4 6 T ...