Linux-v10.0-02天-课堂笔记
1 Linux文件管理
1.1 touch命令
在Windows系统中,我们如果想创建一个文本文档或者word文件的时候,通常的做法是
鼠标右键---新建---文本文档,这样的话,我们就成功的创建了一个文件,而在Linux中,我们可以通过字符命令的形式进行创建
touch命令用于创建文件、修改文件或者目录的时间属性,包括存取时间和更改时间。若文件不存在,系统会建立一个新的文件。
ls -l 可以显示档案的时间记录
使用者权限:所有权限用户
语法
touch [-acfm][-d<日期时间>][-r<参考文件或目录>] [-t<日期时间>][--help][--version][文件或目录…]
- 参数说明:
- a 改变档案的读取时间记录。
- m 改变档案的修改时间记录。
- c 假如目的档案不存在,不会建立新的档案。与 --no-create 的效果一样。
- f 不使用,是为了与其他 unix 系统的相容性而保留。
- r 使用参考档的时间记录,与 --file 的效果一样。
- d 设定时间与日期,可以使用各种不同的格式。
- t 设定档案的时间记录,格式与 date 指令相同。
- –no-create 不会建立新档案。
- –help 列出指令格式。
- –version 列出版本讯息。
使用 touch 创建一个空文件
在 Linux 系统上使用 touch 命令创建空文件,键入 touch ,然后输入文件名。如下所示
touch aaa-devops.txt
查看
ls -l aaa-devops.txt
使用 touch 创建批量空文件
在实际的开发过程中可能会出现一些情况,我们必须为某些测试创建大量空文件,这可以使用 touch 命令轻松实现
touch aaa-{1..10}.txt
在上面的例子中,我们创建了 10 个名为 aaa-1.txt到 aaa-10.txt` 的空文件,你可以根据需要更改名称和数字
执行查看命令
ls -l
改变/更新文件访问时间
假设我们想要改变名为 aaa-devops.txt 文件的访问时间,在 touch 命令中使用 -a 选项,然后输入文件名。如下所示:
1、我们先 查看下aaa-devops.txt的时间属性
ls -l aaa-devops.txt
我们发现,最后的访问时间是12月 18 11:34
更新时间属性,如下
touch aaa-devops.txt
执行ls命令查看,如下
ls -l aaa-devops.txt
我们发现,访问时间变成了 12月 18 13:50
我们也可以使用stat命令进行查看,如下:
stat aaa-devops.txt
关于stat命令:
stat命令用于显示inode内容。
stat以文字的格式来显示inode的内容。
语法
stat [文件或目录]
1.2 vi与vim命令
1.2.1 vi/vim介绍
使用vi/vim其实就相当于我们在Windows系统中创建文件、打开文件、编辑文件、保存文件操作
1、vi介绍
vi是 visual interface 的简称, 是linux中最经典的文本编辑器。
- vi的特点
- 只能是编辑 文本内容, 不能对 字体 段落进行排版
- 不支持鼠标操作
- 没有菜单
- 只有命令
- vi编辑器在 系统管理 服务器管理 编辑文件时, 其功能永远不是图形界面的编辑器能比拟的
2、vim介绍
vim:是从 vi (系统内置命令)发展出来的一个文本编辑器。代码补全、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。
简单的来说, vi 是老式的字处理器,不过功能已经很齐全了,但是还是有可以进步的地方。
vim 则可以说是程序开发者的一项很好用的工具。
1.2.2 vi/vim模式
vi/vim模式主要分为以下三种:
命令模式:在Linux终端中输入“vim 文件名”就进入了命令模式,但不能输入文字。 **编辑模式:**在命令模式下按i就会进入编辑模式,此时就可以写入程式,按Esc可回到命令模式。 **末行模式:**在命令模式下按:进入末行模式,左下角会有一个冒号出现,此时可以敲入命令并执行。
总结
上面的三种模式简单总结下就是:
1、vim 开始进入时是命令模式
2、按下I的时候会进入编辑模式
3、按下ESC然后在按下:的时候是末行模式
1.2.3 打开和新建文件
使用vim不但可以打开一个现存的文件;也可以生成(vim后的文件不存在的情况下)一个文件;有点类似于我们在Windows中输入notepad命令一样,我们输入notepad后就会打开一个文本文档,然后进行编辑--另存为。
使用者权限:当前文件的权限用户
vim txtfile.txt
- 如果文件已经存在, 会直接打开该文件
- 如果文件不存在, 保存且退出时 就会新建一个文件
注意
我们通过下面的三种模式切换详细阐述vim的用法
1.2.4 三种模式切换
1、进入命令模式
上接上面的例子,我们执行下面的命令其实就是进入了命令模式
vim txtfile.txt
2、进入编辑模式
上接上面的例子,按i进入插入模式
- 在 vi 中除了常用
i 进入编辑模式 外, 还提供了一下命令同样可以进入编辑模式
命令 | 英文 | 功能 | 常用 |
---|
i | insert | 在当前字符前插入文本 | 常用 | I | insert | 在行首插入文本 | 较常用 | a | append | 在当前字符后添加文本 | | A | append | 在行末添加文本 | 较常用 | o | | 在当前行后面插入一空行 | 常用 | O | | 在当前行前面插入一空行 | 常用 |
我们看到【插入】(英文版为INSERT),说明我们进入了编辑模式
因为我们是一个空文件,所以使用【I】或者【i】都可以
如果里面的文本很多,要使用【A】进入编辑模式,即在行末添加文本
3、进入末行模式
编辑模式不能保存文件 必须先推到命令模式 先按Esc键退出到命令模式 然后按小写的**:wq 正常保存退出**
进入末行模式—》按符号: 鼠标跑到屏幕的最后一行,执行效果如下图
然后按小写的**:wq 正常保存退出** 退出后显示【已写入】
以下为其他的退出模式:
:q 当vim进入文件没有对文件内容做任何操作可以按"q"退出
:q! 当vim进入文件对文件内容有操作但不想保存退出
:wq 正常保存退出
:wq! 强行保存退出,只针对与root用户或文件所有人生
总结
三种模式的切换,其实就完成了文件创建、编辑、保存、退出四个步骤
那么接下来,我们学习下一个命令
查看刚才新创建的文件
1.2.5 文件查看
比如查看一个txt文档,在windows中,我们通常是打开一个文件,通过鼠标滚动查看文件不同节选的内容,而在Linux中,通过下面的命令,可以减少在Windows中手工查找的步骤,在Linux中通过命令+参数的形式进行定位查看、搜索查看
以下5个为文件查看命令,我们只讲4个常用的命令,head不在赘述
序号 | 命令 | 对应英文 | 作用 |
---|
01 | cat 文件名 | concatenate | 查看小文件内容 | 02 | less -N 文件名 | less | 分频 显示大文件内容 | 03 | head -n 文件名 | | 查看文件的前一部分 | 04 | tail -n 文件名 | | 查看文件的最后部分 | 05 | grep 关键字 文件名 | grep | 根据关键词, 搜索文本文件内容 |
总结:
以上5个命令都可以查询文件的内容,他们的功能如下
通过 cat 会一次显示所有的内容, 适合 查看内容较少 的文本文件
less 命令适合查看 内容较多 的文本文件
通过 head 命令查看文档的前几行内容
通过 tail -10f 文件 命令 查看文档(日志)的后几行内容
通过 grep 命令 搜索存在 关键字 的行
1) cat命令
使用cat命令类似于我们在Windows中查看小型(太大的时候打开会卡死)的文件,cat常用的功能其实就等价于Windows中的
txt---打开--查看
cat 是一个文本文件查看和连接工具。查看一个文件的内容,用cat比较简单,就是cat 后面直接接文件名,如cat txtFiles.txt
使用者权限:当前文件的权限用户
语法格式
cat [-AbeEnstTuv] [--help] [--version] fileName
查看文件名为txtfile.txt的内容
cat txtfile.txt
查看文件名为txtfile.txt的内容(加入行号)
cat -n txtfile.txt
2) grep命令
grep命令在使用的时候类似于我们的程序中的查询,或者在txt文档中通过ctr+f查找
grep除了能对文件操作为还可以查看我们的进程信息,类似于我们在Windows系统的任务管理器(任务栏--右键---启动任务管理器--进程)下的进程
grep 指令用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的范本样式,预设 grep 指令会把含有范本样式的那一列显示出来。若不指定任何文件名称,或是所给予的文件名为 -,则 grep 指令会从标准输入设备读取数据。
grep 命令用于查找文件里符合条件的字符串,语法如下:
grep [-abcEFGhHilLnqrsvVwxy][-A<显示列数>][-B<显示列数>][-C<显示列数>][-d<进行动作>][-e<范本样式>][-f<范本文件>][--help][范本样式][文件或目录...]
使用者权限:当前文件的权限用户
为了测试效果,我们新增了其他数据
增加过程不在赘述
1、搜索 存在关键字【eeee】 的行的文件
grep eeee txtfile.txt
2、搜索 存在关键字【eeee】 的行 且 显示行号
grep -n eeee txtfile.txt
3、忽略大小写 搜索 存在关键字 的行
grep -i EEEE txtfile.txt
4、搜索 不存在关键字 的行
grep -v 中国 txtfile.txt
5、查找指定的进程信息(包含grep进程)
ps -ef | grep sshd
说明
除最后一条记录外,其他的都是查找出的进程;最后一条记录结果是grep进程本身,并非真正要找的进程
6、查找指定的进程信息(不包含grep进程)
ps aux | grep sshd | grep -v "grep"
7、查找进程个数
ps -ef|grep -c sshd
3) tail命令
tail命令类似于我们在windows中通过鼠标手工查找,比如查看文件最后10行,从第2行一直查看到文件末尾,或者只查看文件末尾的一些信息,这些windows中都是通过人为干预的方式进行查找,在Linux中我们可以通过tail命令实现
tail 命令可用于查看文件的内容,有一个常用的参数 -f 常用于查阅正在改变的日志文件。
tail -f filename 会把 filename 文件里的最尾部的内容显示在屏幕上,并且不断刷新,只要 filename 更新就可以看到最新的文件内容。
使用者权限:当前文件的权限用户
命令格式:
tail [参数] [文件]
1、要显示 txtfile.txt 文件的最后 3 行,请输入以下命令:
tail -3 txtfile.txt
2、动态显示文档的最后内容,一般用来查看日志,请输入以下命令:
tail -f txtfile.txt
此命令显示 txtfile.txt 文件的最后 10 行。当将某些行添加至 txtfile.txt 文件时,tail 命令会继续显示这些行。 显示一直继续,直到您按下(Ctrl-C)组合键停止显示。
如果要显示最后4行,命令如下:
tail -4f txtfile.txt
3、显示文件txtfile.txt 的内容,从第 2 行至文件末尾
tail -n +2 txtfile.txt
4、显示文件 txtfile.txt的最后 10 个字符:
tail -c 45 txtfile.txt
总结
在tail使用的过程中,我们使用最多的就是查看文件末尾多多少行
使用tail -nf txtfile.txt
通常都是在查看日志信息(报错调试时使用)
4)less命令
less命令也是查看文件的,只不过它适合查看 内容较多的文本文件,它也可以用于分屏显示文件内容, 每次只显示一页内容,有点类似我们做分页查询
less用于查看文件,但是less 在查看之前不会加载整个文件。
使用者权限:当前文件的权限用户
语法
less [参数] 文件
1、查看txtfile.txt文件
less txtfile.txt
2、查看命令历史使用记录并通过less分页显示
[root@localhost ~]$ history | less
1 ifconfig
2 reboot
3 ifconfig
4 reboot
5 ifconfig
6 su root
7 ifconfig
8 ping www.baidu.com
9 \
10 ifconfig
11 date
12 hwclock --systohc
13 su root
......略
我们输入【j】可以前进行
? 输入【k】可以后退行
? 输入【G】可以 移动到最后一行
? 输入【g】可以移动到第一行
? 输入【ctrl + F】 向前移动一屏(类似于我们在浏览器中的数据分页的下一页)
? 输入【ctrl + B】 向后移动一屏(类似于我们在浏览器中的数据分页的上一页)
其他命令
1.全屏导航
- ctrl + F - 向前移动一屏
- ctrl + B - 向后移动一屏
- ctrl + D - 向前移动半屏
- ctrl + U - 向后移动半屏
2.单行导航
3.其它导航
- G - 移动到最后一行
- g - 移动到第一行
- q / ZZ - 退出 less 命令
1.2.6 vim定位行
在日常工作中,有可能会遇到打开一个文件,并定位到指定行的情况
例如: 在开发时, 知道某一行代码有错误,可以快速定位到出错误代码的位置
这个时候,可以使用以下命令打开文件
由于我们这里还没有学到上传文件的命令,所以我们这里还是使用上面的txtfile.txt例子,我们打开文件定位到第6行,如下:
vim txtfile.txt +6
g)]
1.2.7 异常处理
- 如果 vim异常退出, 在磁盘上可能会保存有 交换文件
- 下次再使用 vim 编辑文件时, 会看到以下屏幕信息,
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-B6Khdpm5-1630506754154)(assets/1576658330514.png)]
解决方案:
将后缀名为.swp的文件删除即可恢复
再次编辑文件不在出现提示警告!
1.2.8 操作扩展
要熟练使用vi/vim, 首先应该学会怎么在 命令模式下 快速移动光标 编辑操作命令 能够和移动命令一起使用
1) 上 下 左 右
命令 | 功能 | 手指 |
---|
h | 向左 | 食指 | j | 向下 | 食指 | k | 向上 | 中指 | l | 向右 | 无名指 |
也可以使用键盘上的上下左右箭头,这个更有方向感。
2) 行内移动
命令 | 英文 | 功能 |
---|
w | word | 向后移动一个单词 | b | back | 向前移动一个单词 | 0 | | 行首 | ^ | | 行首, 第一个不是空白字符的位置 | $ | | 行尾 |
3) 行数移动
命令 | 英文 | 功能 |
---|
gg | go | 文件顶部 | G | go | 文件末尾 | 数字gg | go | 移动到 数字 对应行数 | 数字G | go | 移动到 数字 对应行数 | : 数字 | | 移动到数字对应的 行数 |
4) 屏幕移动
命令 | 英文 | 功能 |
---|
Ctrl + b | back | 向上翻页 | Ctrl + f | forward | 向下翻页 | H | Head | 屏幕顶部 | M | Middle | 屏幕中间 | L | Low | 屏幕底部 |
5) 选中文本(可视模式)
- 学习 复制 命令前, 应该先学会 怎么样选中 要复制的代码
- 在 vi/vim 中要选择文本, 需要显示 visual 命令切换到 可视模式
- vi/vim 中提供了 三种 可视模式, 可以方便程序员的选择 选中文本的方式
- 按 ESC 可以放弃选中, 返回到 命令模式
命令 | 模式 | 功能 |
---|
v | 可视模式 | 从光标位置开始按照正常模式选择文本 | V | 可视化模式 | 选中光标经过的完整行 | Ctrl + v | 可是块模式 | 垂直方向选中文本 |
6) 撤销和恢复撤销(保命指令)
在学习编辑命令之前,先要知道怎样撤销之前一次 错误的 编辑操作
命令 | 英文 | 功能 |
---|
u | undo | 撤销上次的命令(ctrl + z) | Ctrl + r | uredo | 恢复撤销的命令 |
7) 删除文本
命令 | 英文 | 功能 |
---|
x | cut | 删除光标所在的字符,或者选中的文字 | d(移动命令) | delete | 删除移动命令对应的内容 | dd | delete | 删除光标所在行, 可以删除多行 | D | delete | 删除至行尾 |
提示: 如果使用 可视模式 已经选中了一段文本, 那么无论使用 d 还是 x, 都可以删除选中文本
删除命令可以和移动命令连用, 以下是常见的组合命令(扩展):
命令 | 作用 |
---|
dw | 从光标位置删除到单词末尾 | d} | 从光标位置删除到段落末尾 | ndd | 从光标位置向下连续删除 n 行 |
8) 复制和剪切
- vi/vim 中提供有一个 被复制文本的缓冲区
- 复制 命令会将选中的文字保存在缓冲区
- 删除 命令删除的文字会被保存在缓冲区
- 在需要的位置, 使用 粘贴 命令可以将缓冲对的文字插入到光标所在的位置
命令 | 英文 | 功能 |
---|
yy | copy | 复制行 | d(剪切命令) | delete | 剪切 | dd(剪切) | delete | 剪切一行, 可以 ndd 剪切n行 | p | paste | 粘贴 |
提示:
- 命令 d 、x 类似于图形界面的 剪切操作 – ctrl + x
- 命令 y 类似于 图形界面的 复制操作 – Ctrl +
- 命令 p 类似于图形界面的 粘贴操作 – Ctrl + v
- vi中的文本缓冲区只有一个,如果后续做过 复制、剪切操作, 之前缓冲区中的内容会被替换.
注意
- vi中的 文本缓冲区 和 系统的 剪切板 不是同一个
- 所以在其他软件中使用
Ctrl + C 复制的内容, 不能再 vi 中通过 p 命令粘贴 - 可以在 编辑模式 下使用 鼠标右键粘贴
9) 替换
命令 | 英文 | 功能 | 工作模式 |
---|
r | replace | 替换当前字符 | 命令模式 | R | replace | 替换当前行光标后的字符 | 替换模式 |
R 命令可以进入 替换模式, 替换完成后, 按下ESC , 按下 ESC 可以回到 命令模式- 替换命令 的作用就是不用进入 编辑模式, 对文件进行 轻量级的修改
10) 缩排和重复执行
命令 | 功能 |
---|
>> | 向右增加缩进 | << | 向左减少缩进 | . | 重复上次命令 |
- 缩进命令 在开发程序时, 统一增加代码的缩进 比较有用!
- 一次性 在选中代码前增加 4 个空格, 就叫做 增加缩进
- 一次性 在选中代码前删除 4 个空格, 就叫做 较少缩进
- 在 可视模式 下, 缩排命令 主需要使用 一个
> 或者 <
在程序中, 缩进 通常用来表示代码的归属关系
- 前面空格越少, 代码的级别越高
- 前面空格越多, 代码的级别越低
11) 查找
常规查找
-
查找到指定内容之后, 使用 Next 查找下一个出现的位置
-
如果不想看到高亮显示, 可以随便查找一个文件中不存在的内容即可 -
单词快速匹配
命令 | 功能 |
---|
* | 向后查找当前光标所在单词 | # | 向前查找当前光标所在单词 |
- 在开发中, 通过单词快速匹配, 可以快速看到这个单词在其他位置使用过
12) 查找并替换
- 在
vi/vim 中查找和替换命令需要在 末行模式 下执行 - 记忆命令格式
:%s///g
- 全局替换
-
一次向 替换文件中的 所有出现的旧文本 -
命令格式如下 :%s/旧文本/新文本/g
- 可视区域替换
:s/旧文本/新文本/g
- 确认替换:
c confirm 确认
y - yes 替换n - no 不替换a - all 替换所有q -quit 退出替换l - last 最后一个, 并把光标移动到行首^E 向下滚屏^Y 向上滚屏
1.3 echo 命令
echo命令有点类似于我们在java se阶段学习的 System.out.print("hello")
但是,echo还有一个功能就是追加文件内容到文件,类似于我们在java se阶段学习的append文件流写入一样
使用者权限:所有用户
echo string 将字符串输出到控制台 , 通常和 重定向 联合使用
echo hello world
# 如果字符串有空格, 为了避免歧义 请增加 双引号 或者 单引号
echo "hello world"
6.3 重定向 > (覆盖) 和 >> (追加)
- 默认情况下 命令的结果 输出到 控制台
- 通过 重定向 可以将结果 输出到文件
6.2.3 实现
echo 传智博客 >aaa-txt.txt
命令 | 作用 |
---|
结果 > 文件名 | > 表示输出, 会覆盖文件的原有内容 |
echo aaa >> aaa-txt.txt
命令 | 作用 |
---|
命令 >> 文件名 | >> 表示追加, 会将内容追加到已有文件的末尾 |
cat 不存在的目录 &>> error.log
命令 | 作用 |
---|
命令 &>> 文件 | &>> 表示不区分错误类型 都放到 日志中 |
总结
- 通过
命令 > 文件 将命令的成功结果 覆盖 指定文件内容 - 通过
命令 >> 文件 将命令的成功结果 追加 指定文件的后面 - 通过
命令 &>> 文件 将 命令的失败结果 追加 指定文件的后面
1.4 awk命令
AWK是一种处理文本文件的语言,是一个强大的文本分析工具。
之所以叫AWK是因为其取了三位创始人 Alfred Aho,Peter Weinberger, 和 Brian Kernighan 的 Family Name 的首字符。
具体语法如下
awk [选项参数] 'script' var=value file(s)
或
awk [选项参数] -f scriptfile var=value file(s)
1、数据准备:czbk-txt.txt文本内容如下:
zhangsan 68 99 26
lisi 98 66 96
wangwu 38 33 86
zhaoliu 78 44 36
maq 88 22 66
zhouba 98 44 46
2、搜索含有 zhang 和 li 的学生成绩:
cat aaa-txt.txt | awk '/zhang|li/'
指定分割符, 根据下标显示内容
命令 | 含义 |
---|
awk -F ‘,’ ‘{print $1, $2, $3}’ 文件 | 操作1.txt文件, 根据 逗号 分割, 打印 第一段 第二段 第三段 内容 |
选项
选项 | 英文 | 含义 |
---|
-F ',' | field-separator | 使用 指定字符 分割 | $ + 数字 | | 获取第几段内容 | $0 | | 获取 当前行 内容 | NF | field | 表示当前行共有多少个字段 | $NF | | 代表 最后一个字段 | $(NF-1) | | 代表 倒数第二个字段 | NR | | 代表 处理的是第几行 |
# 查看文档内容
cat aaa-txt.txt
#直接输出
cat score.txt | awk -F ' ' '{print $1,$2,$3}'
指定分割符, 根据下标显示内容
命令 | 含义 |
---|
awk -F ’ ’ ‘{OFS="==="}{print $1, $2, $3}’ 1.txt | 操作1.txt文件, 根据 逗号 分割, 打印 第一段 第二段 第三段 内容 |
选项
选项 | 英文 | 含义 |
---|
OFS="字符" | output field separator | 向外输出时的段分割字符串 |
转义序列 | 含义 |
---|
\b | 退格 | \f | 换页 | \n | 换行 | \r | 回车 | \t | 制表符 |
# 按照 === 进行分割, 打印 第一段 第二段 第三段
cat aaa-txt.txt | awk -F ' ' '{OFS="==="}{print $1,$2,$3}'
# 按照 制表符tab 进行分割, 打印 第一段 第二段 第三段
cat aaa-txt.txt| awk -F ' ' '{OFS="\t"}{print $1,$2,$3}'
调用 awk 提供的函数
命令 | 含义 |
---|
awk -F ‘,’ ‘{print toupper($2)}’ 1.txt | 操作1.txt文件, 根据 逗号 分割, 打印 第一段 第二段 第三段 内容 |
常用函数如下:
函数名 | 含义 | 作用 |
---|
toupper() | upper | 字符 转成 大写 | tolower() | lower | 字符 转成小写 | length() | length | 返回 字符长度 |
# 打印第一段内容
cat aaa-txt.txt | awk -F ' ' '{print $1}'
# 将第一段内容转成大写 且 显示
cat aaa-txt.txt | awk -F ' ' '{print toupper($1)}'
求指定学科平均分
命令 | 含义 |
---|
awk ‘BEGIN{初始化操作}{每行都执行} END{结束时操作}’ 文件名 | BEGIN{ 这里面放的是执行前的语句 } {这里面放的是处理每一行时要执行的语句} END {这里面放的是处理完所有的行后要执行的语句 } |
查看aaa-txt.txt 文件内容
cat aaa-txt.txt
查看总分
注意:这里计算的是第4列的总分
cat aaa-txt.txt| awk -F ' ' 'BEGIN{}{total=total+$4} END{print total}'
查看总分, 总人数
注意:这里计算的是第4列的
cat czbk-txt.txt| awk -F ' ' 'BEGIN{}{total=total+$4} END{print total, NR}'
查看总分, 总人数, 平均分
注意:这里计算的是第4列的
cat czbk-txt.txt | awk -F ' ' 'BEGIN{}{total=total+$4} END{print total, NR, (total/NR)}'
总结
awk在使用过程中主要用作分析
简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理
1.5 软连接
软连接其实就类似于我们在Windows中的【快捷方式】
-
在Linux文件名 和 内容 是两个文件, 分开的! 为什么有软连接? 因为 某些文件和目录 的 路径很深, 所以 需要增加 软链接(快捷方式)
使用者权限:所有用户
语法如下:
命令 | 英文 | 作用 |
---|
ln -s 目标文件绝对路径 快捷方式路径 | link | 给目标文件增加一个软链接, 通俗讲就是快捷方式 |
给home/itcast/txtfile.txt文件增加软连接
ln -s /home/zhang/txtfile.txt aaa-txt
上面;我们将/home/zhang/路径下的txtfile.txt文件增加软连接到aaa-txt,然后通过cat 访问aaa-txt也是可以正常访问的
总结
通过 `ln -s 源文件的绝对路径 其实就是给目标文件 增加 快捷方式
1.6 find查找
引子
find命令类似与在Windows中全局查找(如下图)
find概念
find命令用来在指定目录下查找文件。
任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示。
语法
find <指定目录> <指定条件> <指定内容>
1、将目前目录及其子目录下所有延伸档名是 gz 的文件查询出来
find . -name "*.gz"
2、将目前目录及其子目录下所有最近 1天内更新过的文件查询出来
find . -ctime -1
3、全局搜索aaa
/代表是全盘搜索,也可以指定目录搜索
find / -name 'aaa'
1.7 总结
文件命令是我们在开发过程中最经常使用的到的命令,所以,我们在学习过程中一定要认真学习文件的常用命令,比如文件创建、编写、读取命令。
2 Linux压缩
在Windows中我们对于一个大文件进行压缩的时候,通常会使用第三方工具,比如360压缩、快压等工具,把一个文件压缩成.zip格式的压缩文件;而在Linux中我们也可以通过各种命令实现压缩的功能。
2.1 tar命令
tar的主要功能是打包、压缩和解压文件。
tar本身不具有压缩功能。他是调用压缩功能实现的 。
使用者权限:所有用户
语法
tar[必要参数][选择参数][文件]
1、将 txtfile.txt文件打包(仅打包,不压缩)
txtfile.txt文件为上面章节的例子
tar -cvf txt.tar txtfile.txt
2、将 txtfile.txt文件打包压缩(打包压缩(gzip))
tar -zcvf txt.tar.gz txtfile.txt
总结
参数 f 之后的文件档名是自己取的,我们习惯上都用 .tar 来作为辨识。 如果加 z 参数,则以 .tar.gz 或 .tgz 来代表 gzip 压缩过的 tar包
3、查看tar中有哪些文件
tar -ztvf txt.tar.gz
压缩包中的文件有txtfile.txt
4、将tar 包解压缩
1.新建目录
mkdir ysFiles
2.复制
cp txt.tar.gz ./ysFiles/
3.解压缩
tar -zxvf /home/zhang/ysFiles/txt.tar.gz
|