Linux常用基本命令(三)
一、显示命令
? ? ? ? 1. cat
通式:cat 选项 文件名
只能看普通的文本文件
缺点:如果内容过多会显示不全
选项 | 效果 |
-n | 显示行号包括空行 |
-b | 跳过空白行编号 |
-s | 讲所有的连续的多个空行替换为一个空行(压缩成一个空行) |
-A | 显示隐藏字符 |
?????????三个标准文件:
标准输入:你输入的指令
标准输出:电脑反馈给你的正确信息
错误输出:电脑的一些报错信息
????????默认在屏幕上显示
? ? ? ? 重定向:
重新定义标准输出方向,符号 >
????????● > 一个是覆盖
????????● >> 两个是追加
案例:如何合并两个文件
????????????????cat A B > C? ? ? ? ? ? ? ? ? ? ? ? 为上下合并
????????????????相似? paste A B > C? ? ? ? ? ? ? 左右
? ? ? ? 2. rev
将同一行的内容逆向显示:
? ? ? ? 拓展:
通式:命令1 | 命令2 | 命令3 | 命令4
管道符:将前面命令的结果当作后面命令的参数执行
管道符 左边的命令 一定要有 标准输出
管道符 右边的命令 一定要可以接收标准输入
二、分页查看
? ? ? ? 1. more
通式:more [选项] 文件名
基本操作:
? ? ? ? ● 回车? ?一行
? ? ? ? ● 空格? ?一页
? ? ? ? ● q????????退出
? ? ? ? 2. less
通式:less [选项] 文件名
注:
????????/关键字 进行搜索,大小写敏感
????????命令 | less 进行分页查看
????????● 可以使用/ 查找 n向下 N向上查找
????????● Page Up 向上翻页,Page Down 向下翻页
三、显示文件前后内容
? ? ? ? 1. head
可以显示文件或标准输入的前面行
通式:head [选项] 文件名????????
选项 | 效果 |
-c # | 指定获取前#字节 |
-n # | 指定获取前#行,#如果为负数,表示从文件头渠道倒数第#前 |
-# | 同上 |
head -n 具体数字 文件名 (不加具体的数字,默认开头十行)
? ? ? ? #号代表数字
案例:
1. 看a文件的前3行 ? ? ? ?
2. 去掉最后数字行,代表显示1到6行
????????2. tail
tail 和head 相反,查看文件或标准输入的倒数行
通式:tail?[选项] 文件名???
选项 | 效果 |
-n # | 看文件的末尾的数字行 |
-f | 实时查看文件 |
补充:
? ? ? ? tail -n 数字
????????tail -f 文件名
????????tailf 文件名
????????tailf = tail -f
? ? ? ? 3. wc
通式:wc 【选项】 目标文件
选项:
选项 | 效果 |
-l | 统计行数 |
-w | 统计单词个数 |
-c | 统计字节数 |
? ? ? ? 4. grep
通式:grep [选项] 表达式 文件(标准输入)
选项 :
选项 | 效果 |
-i | 忽略大小写 |
-v | 反选 |
-o | 只显示匹配的内容 |
-f | 对比两个文件的相同行 |
-n | 显示行号 |
-r | 递归? ? ? ? 不找软连接 |
?基本格式:
????????● 要查找的字符串以双引号括起来单引号也可以
????????● “^……”表示以……开头,“……$”表示以……结尾
????????● “^$”表示空行
案例:超出两个文件中相同的部分
????????????????grep -f a文件 b文件
? ? ? ? ?分析:将a文件作为条件去匹配b文件,得出a文件和b文件相同的部分
拓展:
以root开头
????????grep “root$” passwd
空行
????????grep “^$” passwd
非空行
????????grep -v “^$” passwd
? ? ? ? 正则表达式? ??
????????????????● ^ 一行的开头
????????????????● $ 一行的结尾
????????????????● . 任意字符
拓展:
????????正则表达式:匹配文件中的字符串(grep awk sed)
????????通配符:匹配文件的名字(ls find)
? ? ? ? 5. split
作用:分割文件
通式:split [-b ] [-C ] [-] [-l ] [要切割的文件] [输出文件名前缀] [-a ]
选项 | 效果 |
-b <字节> | 指定按多少字节进行拆分,也可以指定 K、M、G、T 等单位。 |
- <行数> 或 -l <行数> | 指定每多少行要拆分成一个文件。 |
-a <后缀长度> | 默认的后缀长度是 2 |
四、压缩,解压缩
? ? ? ? 1. tar-归档
通式:tar [选项] ... 归档文件名 源文件或目录
tar的语法:
????????建立归档
????????tar fzcv 压缩的包的名字(*.tar.gz) 需要压缩的文件
选项 | 效果 |
-f | 代表使用tar归档 只要出现 tar 一定要出现 -f |
-c | 建立归档文件 |
-x | 解开归档 |
-j | 代表使用 bzip2 压缩 |
-z | 代表使用 gzip 压缩 |
-C | 指定解压的目录 |
-t | 不解开压缩包 查看压缩包中的内容 |
-v | 显示压缩解压缩过程 |
-p | 保留权限 |
-P | 路径 |
五、vim编译器
? ? ? ? 1. 三种模式
????????Vim 编译器有三种模式,分别是命令模式、插入模式和末行模式
????????命令模式:正常模式是 Vim 编译器的默认模式,也是最常用的模式。在正常模式下,用户可以使用各种命令进行文本编辑、移动光标和执行操作等。
????????插入模式:插入模式用于输入文本。可以通过按下?i
?键进入插入模式,此时光标会变成竖线状,可以直接输入文本内容。按下?Esc
?键可以从插入模式返回到命令模式。
????????末行模式:命令行模式用于执行 Vim 编辑器的各种命令。可以通过按下?:
?键进入末行模式,在此模式下可以输入各种 Vim 命令,例如保存文件、退出编辑器等。
? ? ? ? 2. 命令模式
命令模式:才进去的那个模式
行间跳转:
? ? ? ? 数字G? ? ? ? 跳到数字行
? ? ? ? gg? ? ? ? ? ? ? 首行
? ? ? ? G? ? ? ? ? ? ? ?末行
行内跳转:
? ? ? ? 行首:0? ? ? ? ? ? ^
? ? ? ? 行尾:end? ? ? ? $
? ? ? ? 一个单词一个单词跳:w
撤销修改:
????????u????????撤销一次操作
????????U???????撤销全部
复制 y:
????????yy????????复制一行
????????10 yy? ?复制10行
粘贴命令:
????????p????????贴在光标下面
????????P????????贴在光标上面
删除命令:
????????d ???????????????删除
????????dd ?????????????删除一行
????????10 dd ????????删除10行
字符编辑:
????????x ????????删除一个字符
????????dw? ? ? 删除一个单词
? ? ? ? 3. 输入模式
按 i 或 o 进入:
????????i? ? ? ? ?当前光标处插入
????????o????????下一行插入
? ? ? ? 4. 末行模式
命令模式下输入“ : ”(英文冒号)
快捷键 | 功能效果 |
:q | 退出不报错 |
:q! | 强制退出不保存 |
:wq | 保存并退出 |
:set nu | 显示行号 |
nohl | 取消高亮 |
:set ai | 对齐 |
? ? ? ? 查找替换
先查找文件中的内容 然后换掉它
范围 s / 文件中的旧内容 / 替换的内容 / 修饰符
????????这里的 / 只是分隔符,也可以用#
? ? ? ? 如:s///????????s@@@????????s###
范围:
????????不写范围????????光标当前行
????????%? ? ? ? ? ? ? ? ? ? 全文
????????#? ? ? ? ? ? ? ? ? ? ?#号行 #代表数字
????????2,5? ? ? ? ? ? ? ? ? 2到5行
????????$????????????????????最后一行
????????$-1? ? ? ? ? ? ? ? ?倒数第二行
????????2,$? ? ? ? ? ? ? ? ?2到最后一行
修饰符:
????????:% s/test/ky35/g????????g:全局替换
练习:
????????给所有行开头加上#
????????????????% s/^/#/
????????给所有行开头的#去掉
????????????????% s/^#//
注意:配置文件只有开头的#才是注释
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!