二、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. 嵌入式开发(一) Ubuntu12.04下搭建交叉编译环境

    操作系统:Ubuntu12.04 AMD64位 交叉编译环境:arm-Linux gcc版本4.4.3 前言: 首先理解一下交叉编译的意思.我们要给嵌入式设备写应用程序,但是又不能在嵌入式设备上完成所 ...

  2. ExtJS智能提示工具spket安装与破解

    用myeclipse写java程序,最怕的是什么呢,写javascript代码,原因很简单,没有智能提示,ExtJS是完全js代码的界面库,写起来就更痛苦了,幸好有人做了spket插件,此文采用傻瓜式 ...

  3. jQuery键盘控制方法,以及键值(keycode)对照表

    键盘控制应用范围非常广泛,比如快捷键控制页面的滚动:在填写表单时候,限制输入内容:或者是屏蔽复制.粘贴.退后等功能.这里说说用jQuery怎么来实现.个人觉得jQuery比原生态的JS好用,代码简单清 ...

  4. WebService cxf 接口中获得拦截器参数

    1. 拦截器中put属性 Message message = PhaseInterceptorChain.getCurrentMessage(); message.put("AuthCode ...

  5. centos 下搭建 php环境(2) mysql 安装

    CentOS下的MySQL 5.1安装   01 1.下载源码包 wget http://mysql.llarian.net/Downloads/MySQL-5.1/mysql-5.1.63.tar. ...

  6. Python文件处理之文件指针(四)

    当我们读取文件内容时,并不能重复的读取,比如一个blogCblog.txt文件里有blogCblog内容,用两个read()方法读取blogCblog.txt的内容,会发现,第一个返回文件内容,第二个 ...

  7. iTunes 安装终极解决方案

    近日手贱升级了Itunes,升级过程即报失败,然后卸载所有相关东西,再重装,Itunes安装成功,但是报告无法使用iphone,经过几天摸索,发现是Apple Mobile Device Suppor ...

  8. GitHub 入门

    1. CentOS 安装 Github. # sudo yum install skynet 安装之后查看一下版本. # git --version 2. 注册 Github 账号,登录后阅读 Git ...

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

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

  10. cf C. Divisible by Seven

    http://codeforces.com/contest/376/problem/C 题意:给你一个大数最多含有10^6个数字,这里面必须含有1,6,8,9,然后重新排列找出一个能被6整除的数. 思 ...