Linux 指令笔记(四)
查看/编辑文件 操作
ls 显示目录中文件
ls命令说明
显示当前目录下的所有文件
ls -a
命令后面加上 绝对路径/相对路径 就会显示指定文件夹内的所有文件
ls -a bash/log
相对路径,当前目录是 /root ,欲查看的目录是 /root/bash/log
ls -a /root/bash/log
绝对路径, 当前目录是 /root ,欲查看的目录是 /root/bash/log
更多的命令可以用 ls –help 来查看。
du 查看 文件/文件夹 占用磁盘空间的大小
####du命令说明
#####参数介绍:-h :以人类易读的方式显示
-a :显示 目录占用的磁盘空间大小,并显示其下目录和文件占用磁盘空间的大小
-s :显示 目录占用的磁盘空间大小,但不显示其下子目录和文件占用的磁盘空间大小
-c :显示几个目录或文件占用的磁盘空间大小,还要统计它们的总和
--apparent-size:显示目录或文件自身的大小
-l :统计硬链接占用磁盘空间的大小
-L :统计符号链接所指向的文件占用的磁盘空间大小
更多的命令可以用 du –help 来查看。
使用示例:
假设当前位于 /root 目录下,则显示 /root 文件夹的大小,但不显示其子目录和文件的大小
du -sh
假设当前位于 /root 目录下,则显示 /root 文件夹的大小,并显示其子目录和文件的大小
du -ah
假设当前位于 /root 目录下,则显示 /root 文件夹下的所有文件夹的大小及其总和
du -lh --max-depth=1
更多的命令可以用 du –help 来查看。
cat 查看文件内容
cat命令说明
查看文件:
查看 log.txt文件的所有内容
cat log.txt
查看 log.txt文件的所有内容,并对所有行编号
cat -n log.txt
查看 log.txt文件的所有内容,并对非空行编号
cat -b log.txt
查看 log.txt文件的所有内容,并对非空行编号,且不输出多行空行
cat -bs log.txt
清空文件:
清空当前目录中的 log.txt 文件
cat /dev/null > log.txt
清空 /var目录中的 log.txt 文件
cat /dev/null > /var/log.txt
写入文件:
写入文本到当前目录中的 log.txt文件中(加入文本到文件内容最后)
cat >> log.txt <<-EOF
清空文件并写入文本到 /var目录中的 log.txt文件中(先清空后写入)
cat > /var/log.txt <<-EOF
更多的命令可以用 cat –help 来查看。
head 查看文件内容(主要用于正查)
点击展开 查看 head命令说明
参数介绍:
-c 数字:显示指定文件的前 xx 字节的内容(bytes)
-n 数字:显示指定文件的前 xx 行的内容
-q :不显示包含指定文件名的文件头(当使用 head打开多个文件的时候,会去在每个文件输出结果的顶部添加一个包含文件名的文件头用于区分
更多的命令可以用 head –help 来查看。
使用示例:
查看 log.txt文件的全部内容
head log.txt
查看 log.txt文件的前 3字节的内容
head -c 3 log.txt
输出示例
dou
查看 log.txt文件的前 2行的内容
head -n 2 log.txt
查看 log.txt文件的从倒数第2行到行首的内容
head -n -2 log.txt
查看 log.txt log1.txt log2.txt文件的前 3行内容
head -n 3 log.txt log1.txt log2.txt
更多的命令可以用 head –help 来查看。
tail 查看文件内容(主要用于倒查)
查看 tail命令说明
-c 数字:如果数字为正数(例如 -c +5),显示指定文件从行首第 xx 字节到最后的内容;如果数字为负数(例如 -c -5),显示指定文件从行尾第 xx 字节到最后内容。
-n 数字:如果数字为正数(例如 -c +3),显示指定文件从行首第 xx 行到最后的内容;如果数字为负数(例如 -c -3),显示指定文件从行尾第 xx 行到最后的内容。
-f :即时输出文件变化后增加的内容,也就是监视一个文件的内容变化(常用于监视日志输出),使用 Ctrl+C 终止
更多的命令可以用 tail –help 来查看。
使用示例:
查看 log.txt文件的全部内容
tail log.txt
查看 log.txt文件从行首 第25字节到最后的内容
tail -c +25 log.txt
查看 log.txt文件从行尾 第4字节到最前面的内容
tail -c -4 log.txt
查看 log.txt文件的从第2行到最后一行的内容
tail -n +2 log.txt
查看 log.txt文件的后 2行的内容
tail -n -2 log.txt
持续查看(监视) log.txt文件的变化内容(新增加的内容),使用 Ctrl+C 终止
tail -f log.txt
查看 log.txt log1.txt log2.txt文件的前 3行内容
tail -n 3 log.txt log1.txt log2.txt
更多的命令可以用 tail –help 来查看。
sed 查看/编辑文件内容
查看 sed命令说明
参数介绍:
-i :操作后应用保存到原文件(如果不加这个参数,那么任何修改都不会影响原文件里的内容,只会把结果输出)
-e :仅显示处理后的结果
更多的命令可以用 sed –help 来查看。
使用示例:
查看 log.txt 第3行的内容
sed -n '3p' log.txt
查看 log.txt 第2-8行的内容
sed -n '2,8p' log.txt
删除 log.txt 第1行(首行)
sed -i '1d' log.txt
删除 log.txt 第3-7行
sed -i '3,7d' log.txt
删除 log.txt 最后1行(尾行)
sed -i '$d' log.txt
删除 log.txt 中所有空白行
sed -i '/^$/d' log.txt
删除 log.txt 开头是 doubi 的行
sed -i '/^doubi/'d log.txt
删除 log.txt 结尾是 doubi 的行
sed -i '/doubi$/'d log.txt
删除 log.txt 文件中所有包含 233内容的行
sed -i '/233/d' log.txt
删除 log.txt 文件中第一个 233文本
sed -i 's/233//' log.txt
删除 log.txt 文件中所有 233文本(g 代表操作所有匹配规则的文本)
sed -i 's/233//g' log.txt
删除 log.txt 文件中所有 第5个233文本(5g 代表第五个匹配规则的文本)
sed -i 's/233//5g' log.txt
替换 log.txt 文件中第一个 233为666
sed -i 's/233/666/' log.txt
替换 log.txt 文件中所有 233为666(g 代表操作所有匹配规则的文本)
sed -i 's/233/666/g' log.txt
替换 log.txt 文件中所有 /ver 为 doubi/,因为有斜杠,所以需要使用 \ 转义,但是单引号会导致无法转义,所以要改成双引号。
sed -i "s/\/ver/doubi\//" log.txt
显示 log.txt 文件中的奇数行或偶数行
sed -n 'p;n' log.txt #奇数行
sed -n 'n;p' log.txt #偶数行
更多的命令可以用 sed –help 来查看。
VI、VIM、Nano 编辑文件内容
vi vim none命令说明
VI 介绍
VI 是Linux很棒的一个文本编辑器,不过也存在一些缺点,比如操作麻烦。而 vim就相当于 VI 的加强版,主要介绍 VIM。
VIM 介绍
使用教程:Linux 文本编辑器 VIM 真 · 简单使用教程
打开当前目录下的 log.txt文件,如果没有那么会新建 log.txt文件(安装vim后,使用 vi和 vim打开文件没区别)
vi log.txt
vim log.txt
在命令行模式下,直接输入以下 符号和字母(区分大小写)
进入编辑模式(插入模式,按 Esc键 即可返回命令行模式)
i
删除光标当前所在的一行
dd
删除文件内所有内容
dddG
复制光标当前所在的一行
yy
粘贴刚才复制的一行内容
p
撤销上个操作(误操作可以用这个恢复)
u
保存当前文件( : 是英文的冒号)
:w
另存当前文件内容为 log2.txt
:w log2.txt
退出当前文件
:q
不保存 并强制退出当前文件
:q!
保存并退出当前文件
:wq
更多的命令可以用 vi –help / vim –help 来查看。
Nano 介绍
使用教程:Linux 更适合新手的文本编辑器
打开当前目录下的 log.txt文件,如果没有那么会新建 log.txt文件
nano log.txt
进入后直接就可以输入修改文本内容了,修改后我们可以使用这个 按键保存内容
Ctrl+O
如果不需要编辑了,那么可以用这个 按键退出当前文件
Ctrl+X
如果你在退出前已经修改但没有保存,那么会提醒你是否保存,如果保存就输入 y ,不保存输入 n
然后就会让你输入要保存的文件名(默认原文件名,所以直接按 Enter回车即可,除非你要另存为其他文件名)
Enter