[菜鸟学Linux]03-打包、搜索与重定向、通配符、转义符、环境变量

一、打包压缩与搜索命令
1、tar—用于打包和压缩

  • -z:Gzip格式
  • -j:bzip2格式
  • -C 解压到的目录
  • -c:create,-x:execute
  • 压缩:tar -cjvf 文件名 压缩的东西
  • 解压:tar -xzvf 文件名 -C 解压出来存放的目录

2、grep—在文本中执行关键词搜索

  • -n 显示行号
  • -v 反选

3、find—按照指定条件来查找文件

  • -name:匹配名称
  • -user:匹配所有者
  • -print:显示
  • -exec…{} ;:交由后面进一步处理,注意,{} ;是必要的,{}表示find命令搜索出的每一个文件,命令的结尾必须是;
  • find [查找路径] 寻找条件 操作
  • 举例1: 搜索 /etc 目录下的文件(非目录),文件以 conf 结尾,且大于 10k,然后将其删除。find /etc -type f -name ‘*.conf’ -size +10k -exec rm -f {} ;
  • 举例2: 将 /data/log/ 目录下以 .log 结尾的文件,且更改时间在 7 天以上的删除。find /data/log -name ‘*.log’ -mtime +7 -exec rm -f {} ;
  • 举例3: 搜索条件同 例1 一样,但是不删除,只是将其复制到 /root/conf 目录下。find /etc -type f -name ‘*.conf’ -size +10k -exec cp {} /root/conf/ ;

二、输入输出重定向
1、stdin—标准输入重定向

  • 文件描述为0
  • 默认从键盘输入
  • <:将文件作为命令的标准输入
  • <<:从标准输入中读入,直到遇见分界符(分界符是自己定义的)

2、stdout—标准输出重定向

  • 文件描述为1
  • 默认输出到屏幕
  • >:将标准输出重定向到一个文件中(清空原有文件的数据)
  • >>:将标准输出重定向到一个文件中(在原有文件之后追加数据)

3、stderr—错误输出重定向

  • 文件描述为2
  • 默认输出到屏幕
  • 2>:将错误输出重定向到一个文件中(清空原有文件的数据)
  • 2>>:将错误输出重定向到一个文件中(在原有文件之后追加数据)

4、>>、2>&1、&>>:将标准输出与错误输出共同重定向到文件中

三、管道命令符
1、|—把前一个命令原本要输出到屏幕的数据当作是后一个命令的标准输入

  • ls -l | more:可以翻页查看
  • echo “matthew” | passwd --stdin root
  • 可以嵌套
  • 任意门

四、通配符
1、*—零个或任意多个字符
2、?—一个字符
3、[0-9]—一个0-9的数字
4、[a-z,0-9]—一个a-z或者0-9
5、[135]—1或者3或者5(不建议这么使用)

五、转义符
1、—反斜杠后面的一个变量变为单纯的字符串(转义一个)
2、’’—转义其中所有的变量为单纯的字符串(转义很多个)
3、""—保留其中的变量属性,不进行转义处理
4、``—把其中的命令执行后返回结果,=$(命令)

  • echo `uname -a`

六、环境变量
1、四步判断

  • 绝对路径或相对路径输入命令,如/bin/ls
  • 别名,alias,如rm,在Linux中,rm是rm -i的别名,为了防止用户误删文件。alias后面可以跟参数,用户自定义的alias是在当前会话有效的,重启或断开连接失效,编辑/etc/profile或~/.bashrc,alias就可以永久有效。
  • 内部命令or外部命令(绝大部分是外部命令)
  • 外部命令的执行,在多个路径中查找用户输入的命令文件,这些路径叫PATH,用echo $PATH可以看到。
  • PATH=$PATH:/XXXX/XXXX,以上可以新增命令执行路径
  • PATH就叫做环境变量。HOME,SHELL,HISTSIZE、HISTFILESIZE、MAIL、LANG、RANDOM、PS1、PATH、EDITOR等都是环境变量
  • 环境变量的值因不同用户的不同而不同,如HOME,不同的用户HOME(也就是家目录)肯定是不同的
  • 环境变量有局部环境变量和全局环境变量,用export定义全局环境变量,方便其他用户使用。如export WORKDIR。

在这里插入图片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章