看完这篇Linux基本的操作就会了( 四 )


 

看完这篇Linux基本的操作就会了

文章插图
 
 
看完这篇Linux基本的操作就会了

文章插图
 
 
压缩的方式也是有好几种,我们常用的有下面这三种:
  • gzip
  • bzip2
  • tar
常用的压缩的命令就有:
  • gzip filename
  • bzip2 filename
  • tar -czvf filename
常用的解压命令有:
  • gzip -d filename.gz
  • bzip2 -d filename.bz2
  • tar -xzvf filename.tar.gz
3.3正则表达式+grep上面我们已经学过了cat、more、less、tail这些查看文本文件的命令了,但是我想快速查看这个文本文件下的某些关键字是否存在,那怎么办???
在Windows下就比较简单的,几乎所有的文本编辑器(记事本)都支持CTRL+F,往里面输入关键字就可查找出来:
 
看完这篇Linux基本的操作就会了

文章插图
 
 
那在Linux下,没有图形界面,没有CTRL+F的情况下,如果不懂一些命令的话,那还真是难找对应的字符出来 。下面我就来说说如何快速查找一个文本文件下的某些字符 。
3.3.1正则表达式首先我们就来说说正则表达式,如果接触过的同学就知道:这玩意并不好记 。一旦不用就很容易就忘记了,所以只能在用的时候查查了~~~所以下面我就直接给出一些规则了,不多说啦 。
 
看完这篇Linux基本的操作就会了

文章插图
 
 
看完这篇Linux基本的操作就会了

文章插图
 
 
3.3.2grep命令grep(global search regular expression)是一个强大的文本搜索工具 。grep 使用正则表达式搜索文本,并把匹配的行打印出来 。
格式:grep [options] PATTERN [FILE...]
  • PATTERN 是查找条件:可以是普通字符串、可以是正则表达式,通常用单引号将RE括起来 。
  • FILE 是要查找的文件,可以是用空格间隔的多个文件,也可是使用Shell的通配符在多个文件中查找PATTERN,省略时表示在标准输入中查找 。
  • grep命令不会对输入文件进行任何修改或影响,可以使用输出重定向将结果存为文件
例子:
  • 在文件 myfile 中查找包含字符串 mystr的行
    • grep -n mystr myfile
  • 显示 myfile 中第一个字符为字母的所有行
    • grep '^[a-zA-Z]' myfile
  • 在文件 myfile 中查找首字符不是 # 的行(即过滤掉注释行)
    • grep -v '^#' myfile
  • 列出/etc目录(包括子目录)下所有文件内容中包含字符串“root”的文件名
    • grep -lr root /etc/*
 
用grep查找/etc/passwd文件中以a开头的行,要求显示行号;查找/etc/passwd文件中以login结束的行;
 
看完这篇Linux基本的操作就会了

文章插图
 
 
3.4几种提高工作效率的方法
  • 自动补全命令
    • TAB键
  • 历史命令
    • 上下箭头键
  • 别名alias
这里感觉要说说的就只有别名alias了,我们下面看看例子就懂了!
显示shell当前已经定义的别名;执行其中的两个定义别名的命令;定义一个别名grep,要求其采用彩色方式显示结果
 
看完这篇Linux基本的操作就会了

文章插图
 
 
看完这篇Linux基本的操作就会了

文章插图
 
 
3.5Shell变量 和 Shell环境在Windows下有用户的环境变量,系统的环境变量 。在Linux一样也是有的 。
 
看完这篇Linux基本的操作就会了

文章插图
 
 
Shell 变量大致可以分为三类:
  • 内部变量:由系统提供,用户只能使用不能修改 。
    • ?
    • GROUPS
  • 环境变量:这些变量决定了用户工作的环境,它们不需要用户去定义,可以直接在 shell 中使用,其中某些变量用户可以修改 。
  • 用户变量:由用户建立和修改,在 shell 脚本编写中会经常用到 。
    • 变量赋值(定义变量)
      • varName=Value
      • export varName=Value
    • 引用变量$varName
Shell变量的作用域: