目录结构

练习

systemctr get-default #获取当前系统启动的target
systemctl isolate multi-user.target #切换到文本控制台

大部分命令,只需要输入前几个字符按下TAB键,没有相重的命令,就可以自动补全

目录和文件名等也可以补全,按两次TAB可以列出当前所有以它开头的,可以使用的参数

在Bash中,有两个作用,一是作为换行符,让行得以继续,命令可以正常输入
还有一个作用是作为转义符,用于去除一个单个字符的特殊意义,它保留了跟随在之后的字符的字面值,除了换行符(\n,\r)
作为转义符的例子:
1 2 3 4
| [linux@linux ~]$ echo $HOME /home/ [linux@linux ~]$ echo \$HOME $HOME
|

;
可以分割命令,用来实现一行执行多个命令


1 2 3 4 5 6 7
| wc 【参数】 【文件】 #统计指定文件中的字节数,字数,行数 参数: -c #统计字节数 -l #统计行数 -m #统计字符数,不能和-c一同使用 -w #统计字数,一个字被定义为由空白、跳格或换行字符分隔的字符串 不加参数的默认情况下将计算指定文件的行数,字数,以及字节数
|
1 2
| more 【参数】 【文件】 #一次显示一屏的文本,按空格或者回车继续显示,按`q`退出 -p #显示下一屏之前清屏
|
1 2 3 4 5 6 7
| less 【参数】 【文件】 #浏览文件,并且可以前后翻页,搜索字符 【方向上键】:向下翻行。【j】同样效果 【方向下键】:向上翻行。【k】同样效果 【B】:向上翻页(Back) 【F】:向下翻页(Forward) 【Shift+G】:定位到文本最后一行 通过输入/+回车来搜索内容
|
1 2 3 4 5 6 7 8
| tail 【参数】 【文件】 #用于查看文件,-f可以用于动态读取文件,常用于日志文件 参数: -f #循环读取 文件有更新会立即显示,按ctrl+c停止 -n 【行数】 #显示文件的尾部n行内容 不加参数的默认情况下显示文件最后10行 实例: tail -n 20 123.txt #显示123.txt的文件最后20行 tail -n +20 123.txt #显示123.txt的文件的前面20行
|
history #显示命令历史

logger #可以直接向系统日志文件写入一行信息
(上图是在系统日志写了一句话,在/var/log/messages存放的就是系统日志,在上文tail就是查看了这个日志)


ln可以创建一个文件的影子,也可以通过一个通道进入另一个地方。其实,所有的这些把戏都是通过软链接和硬链接来实现的
注意:
- 硬连接不允许跨区链接,也不允许指向目录
- 硬链接的两个文件的属性大部分都相同
- 硬链接主要用于备份,几乎不占用多余空间
- 软链接允许跨分区链接,也允许链接目录
1 2 3 4 5 6 7
| ln 【参数】 【源文件或目录】 【目标文件或目录】 #创建链接 参数: -s #对原文件建立符号链接,而非硬链接 -f #强制创建链接,即使目标文件以及存在 -d #此选项允许“root”用户建立目录的硬链接 -b #为每个已存在的目标文件创建备份文件 -n #把指向目录的符号链接视为一个普通文件
|
1 2 3 4 5 6 7 8 9
| find 【搜索的目录】 【参数】 #查找文件或者目录 参数: -name 【文件】 #文件名称符合 name 的文件 -iname 【文件】 #iname 会忽略大小写 -user 【用户名】 #文件的所属用户为【用户名】
实例: find /home -user "student" #在/home目录下寻找student文件 find /etc /var /usr -name "passwd" #在多个目录下寻找passwd
|
1 2 3 4 5 6 7 8
| grep 参数: -i #忽略大小写
实例: grep '^cat' /usr/ #以cat开头 grep '^cat$' / #只找cat
|
未完待续