linux就该这么学-第四节课

9月13日开始了第四节课,讲述了第二章:新手必须掌握的Linux命令中的剩余内容,主要是 tar grep find 命令,以及第三章:管道符、重定向与环境变量整章。

tar 用于对文件进行打包压缩或解压,格式为 “tar [选项] [文件]”,tar 命令的参数及其作用如下:

-c 创建压缩文件
-x 解开压缩文件
-t 查看压缩包内有哪些文件
-z 用Gzip压缩或解压
-j 用bzip2压缩或者解压
-v 显示压缩或解压的过程
-f 目标文件名
-p 保留原始的权限或属性
-P 使用绝对路径来压缩
-C 指定解压到的目录
压缩文件一般为: tar -czvf (Gzip格式) tar -cjvf(bzip2格式)
解压文件一般为: tar -xzvf (Gzip格式) tar -xjvf(bzip2格式)

grep 用于在文本中执行关键词搜索,并显示匹配的结果,格式为 “grep [选项] [文件]”,grep 命令的参数及其作用如下:

-b (–byte-offset) 将可执行文件(binary)当作文本文件(text)来搜索
-c (–count) 仅显示找到的行数
-i (–ignore-case) 忽略大小写
-n (–line-number) 显示行号
-v (–invert-match) 反向选择-仅列出没有”关键词”的行

find 用于按照指定条件来查找文件,格式为 “find [查找路径] 寻找条件 操作”,find 命令中的参数以及作用:

-name 匹配名称
-perm 匹配权限(mode 为完全匹配,-mode 为包含即可)
-user 匹配所有者
-group 匹配所有组
-mtime -n +n 匹配修改内容的时间(-n 指n天之内,+n 指n天之前)
-atime -n +n 匹配访问内容的时间(-n 指n天之内,+n 指n天之前)
-ctime -n +n 匹配修改文件权限的时间(-n 指n天之内,+n 指n天之前)
-nouser 匹配无所有者的文件
-nogroup 匹配无所有组的文件
-newer f1 !f2 匹配比文件f1 新但比f2 旧的文件
--type b/d/c/p/l/f 匹配文件类型(后面的字母参数依次表示块设备、目录、字符设备、管道、链接文件、文本文件)
-size 匹配文件的大小(+50KB为查找超过50KB的文件,而-50KB为查找小于50KB的文件)
-prune 忽略某个目录
-exec ...... { } \; 后面可跟用于进一步处理搜索结果的命令

输入输出重定向
覆盖写入 > 2>
追加写入 >> 2>>
其中2> 2>> 为错误输出重定向

管道符(任意门) | ,可以与其他命令组合使用,功能强大。以修改密码为例:echo "redhat" | passwd --stdin root ,此命令可以将 root 用户密码直接改为 redhat。

命令行的通配符 通配符就是通用的匹配信息的符号,比如 * 代表匹配零个或多个字符,? 代表匹配单个字符,中括号内加上数字[0-9]代表匹配0-9之间的单个数字的字符,而中括号内加上字母[abc]则是代表匹配a、b、c 三个字符中的任意一个字符。

此处有个问题,无法直接匹配两位数,只能一位一位匹配,比如15 ,用[0-20]无法匹配,需要[0-9][0-9]

常用的转义字符 转义字符较多,此处只介绍4个常用的,如下:

反斜杠(\) 使反斜杠后面的一个变量变为单纯的字符串。
单引号(’’)转义其中所有的变量为单纯的字符串。
双引号(””) 保留其中的变量属性,不进行转义处理。
反引号(``)把其中的命令执行后返回结果。

重要的坏境变量
export 变量 ,将局部变量提升为全局变量
linux 系统中最重要的10个环境变量:

HOME 用户的主目录(即家目录)
SHELL 用户在使用的Shell解释器名称
HISTSIZE 输出的历史命令记录条数
HISTFILESIZE 保存的历史命令记录条数
MAIL 邮件保存路径
LANG 系统语言、语系名称
RANDOM 生成一个随机数字
PS1 Bash 解释器的提示符
PATH 定义解释器搜索用户执行命令的路径
EDITOR 用户默认的文本编辑器

alias 创建一个属于自己的命令别名,格式为 “alias 别名=命令”,例如:alias cd= rm -f。若要取消一个命令别名,则是用 unalias,格式为 “unalias 别名”。

任务
复习:写笔记,输出重定向,通配符
预习:第四章:Vim编辑器与Shell命令脚本

最近附上笔记:
9.13笔记
9.13笔记
9.13笔记
9.13笔记

文章目录
// Add comment count
|