Linux文件管理
cat
cat? ? ?查看文件的内容
格式:cat? ? [选项] ??????文件名
cat只能看普通文件,如文本文件诸如此类
缺点:如果内容过多会显示不全
选项:? -A? 显示隐藏字符
? ? ? ? ? ? ?-n? 显示行号
? ? ? ? ? ? ?-b? 跳过空白行编号
? ? ? ? ? ? ?-s? 压缩空行
file可以查看文件类型
tac? ? 反向查看文件的内容
echo 将同一行逆向显示
hexdump 查看硬件设备的内容
标准输入和输出
? ? ? ? 标准输入:你输入的指令
? ? ? ? 标准输出:电脑反馈给您的信息
? ? ? ? 错误输出:电脑的一些报错信息
? ? ? ? 默认是显示在屏幕上
重定向
重定向:重新定义标准输出方向
? ? ? ? >? ? 一个箭头是覆盖
? ? ? ? >>? 两个箭头是追加
如何合并两个文件
? ? ? ??cat a? ?b? >? c? ? 上下合并
? ? ? ? paste a? b? > c? ? 左右合并
分页查看
? ? ? ? more? 和 less
? ? ? ? more
? ? ? ? 格式:more? [选项]? ?文件名
? ? ? ? 基本操作:1.空格? 下一页? ?到行末后自动退出
? ? ? ? ? ? ? ? ? ? ? ? ? 2.回车? 一行? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? 3.q 退出
? ? ? ?
????????less
? ? ? ? 格式:less? [选项] 文件名
? ? ? ? 基本操作:??/ 关键字 进行搜索 大小写敏感 n 向下 N 向上
? ? ?head
? ? ? ? head? 可以显示文件或标准输入的前面行
? ? ? ? ? ? 格式: head? [选项]? ? ? [文件]
????????????????head -n 数字 文件名 看文件的前数字行
????????????????head -c 数字 取指定数字的字符
????????????????head -n -数字 去掉最后数字行
? ? ?tail
? ? ? ? ? tail? ? 和head相反查看文件或标准输入的倒数行
? ? ? ? ? 格式:tail? [选项]? ?[文件]
? ? ? ? ? 常用选项: -f? ?跟踪显示文件fd新追加的内容,常用于日志监控? ? ?? 后十行?????tailf = tail -f
? ? ? ? ?????????????????????tail -n 数字 文件名 看文件的后数字行
?????????????????????????????tail -n +数字 从数字行开始显示
? ? ??
? ? ? ? wc
? ? ? ? ? ? ? wc? 统计
? ? ? ? ? ? ??统计? 行? ?'单词'? ? ? 字符数
? ? ? ? ? ? ? ????????-i? 只统计行
? ? ? ? ? ? ????????? -w? 只统计 '单词'? ?(不是最终的单词,以空格隔开的就是一个'单词')
? ? ? ? ? ? ? ????????-c? ?统计字符数
? ? ??
正则表达式: 匹配文件中的字符串(grep awk sed)
通配符:匹配文件的名字(ls find)
? ? grep
? ? ? ? grep? ? ? 过滤文件中感兴趣的行
? ? ? ? 格式:? grep [选项]? 表达式? ?文件名
? ? ? ? 选项:? -i? 忽略大小写
? ? ? ? ? ? ? ? ? ? ?-v 反选
? ? ? ? ? ? ? ? ? ? ?-o 只显示匹配的内容
? ? ? ? ? ? ? ? ? ? ?-f? 对比两个文件的相同行
? ? ? ? ? ? ? ? ? ? ?-c 只显示匹配的行数
? ? ? ? ? ? ? ? ? ? ?-n 显示行号
? ? ? ? ? ? ? ? ? ? ?-r? 递归? 不找软连接
????????找出两个文件中相同的部分
????????grep -f a文件 b文件
????????将a文件做为 条件去匹配b文件, 得出a文件和b文件相同的文件
????????过滤 /etc/passwd 文件中含有 root 关键字的行
????????
????????
? ??正则表达式
? ? ? ? . 任意字符
? ? ? ? ^ 一行的开头
? ? ? ? $ 一行的结尾
????????????????grep '^root' passwd
????????????????匹配passwd中开头是root的行
????????????????grep 'root$' passwd
????????????????匹配passwd 中结尾是root的行
????????????????grep '^root$' passwd
????????????????匹配开头是root的结尾是root的 意思就是匹配只要这一行只有root这个单词
????????????????grep "^$" passwd????????????????
????????????????空行
????????????????grep -v "^$" passwd
????????????????非空行
????????????????
????????????????在某一文件夹中,快速找到所有含有root的字符的文件
????????????????grep -r? root?文件夹
????????????????
? ? ? paste
? ? ? ? ? ? ?paste? 左右合并
? ? ? ? ? ? ?中间默认隔空格
? ? ? ? ? ? ? ? ? ? ? ? -d? :? ? 中间用冒号隔开,别的符号也行
? ? ? ? ? ? ?
??????split 分割文件 ????????
????????????????我有一个10g的文件,怎么分割成小的文件存储?
????????????????split -b 100M 文件名
? ? ??压缩,解压缩
??????????????????只能对文件进行压缩,不能对文件夹进行压缩
??????????????????gz bzip2
??????tar?
? ? ? ? ?tar? 归档? ? ?
????????tar 的语法
????????tar -f 文件名
????????建立归档:加- 的话 f一定要放在最后 不加-无所谓
??????????????????????????tar zcvf 压缩包的名字(*.tar.gz) 需要压缩的文件? ? ? ? ? ? ? ? ??
????????????????????????????????????????tar -cf 建立归档
????????????????????????????????????????tar -xf 解除归档
?????????对选项的顺序有要求的 ???
? ? ? ? ? ? ? ?-f? ?代表使用tar归档? 使用tar? 必须带 -f
? ? ? ? ? ? ? ?-c? 建立归档文件
? ? ? ? ? ? ? ?-x? 解除归档文件
? ? ? ? ? ? ? ?-j? ?代表使用 bzip2 压缩或解压
? ? ? ? ? ? ? ?-z? 代表使用 gzip? 压缩或解压
? ? ? ? ? ? ? ?-C? 指定解压的目录
? ? ? ? ? ? ? ?-t? 不解开压缩包,查看压缩包的内容
? ? ? ? ? ? ? ?-v? 显示压缩解压的过程
? ? ? ? ? ? ? ?-p? 保留权限
? ? ? ? ? ? ? ?-P? 路径
? ? ? ? tar本身是没有压缩功能的,要调用压缩功能
? ? vim编辑器?
? ? ? ?格式: vim? 选项? 文件?
? ? ? ? ? ? ? ? ?vim 文件不存在是新建,存在则是修改,查看? ? ? ? ?
? ? ? ?vi和vim的关系?
? ? ? ???????????vim是vi的升级版
? ? ? ? 常用选项: +#? 打开文件后,让光标处于第#行的行首,+默认行尾
? ? ? ? ? ? ? ? ? ? ? ? ? ?!? ? 打开上一次的文件
? ? ? ? ? ? ? ? ? ? ? ? ? ?+/PATTERN? ? 让光标处于第一个被PATTERN匹配到的行行首 用不多
? vim的三种模式
????????? 三种模式:命令模式 输入模式 末行模式
? ? ? ? 命令模式:进入文件时,便是这个模式
? ? ? ? ? ? ? ? ? ? ?行间跳转:? 数字? G? ? ? ? 跳转到数字行????????
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?gg? ? ? ? 首行
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? G? ? ? ?末行
? ? ? ? ? ? ? ? ? ? ? 行内跳转:??行首:0? ? ? ?^
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 行尾:end? ?$
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 一个单词一个单词的跳:w
? ? ? ? ? ? ? ? ? ? ? ???????复制:y? ? ? ? 复制?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? yy? ? ? ? 复制一行
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?10 yy? ? ? ? 复制10行
? ? ? ? ? ? ? ? ? ? ? ? ? ? 粘贴:p? ? ? ? ? 贴在光标下面
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?P? ? ? ? ? 贴在光标上面
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?删除:x? ? ? ? 删除
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? d? ? ? ? 剪切(删除)? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? dd? ? ? ? 删除一行
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?10 dd? ? ? ? 删除10行
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? dw? ? ? ? 删除一个单词
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?撤销: u? ? ? ? 撤销一次
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? U? ? ? ? 撤销全部
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ctrl+r? ? ? ? 取消撤销
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?替换:? r? ? ? ? 替换
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? R? ? ? ? 进入替换模式
? ? ? ? ? ? ? ? ? ? ? ? ZZ 保存退出? ? ? ? ZQ? ? ? ? 不保存退出????????
? ? ? ? ? ? ? ? ? ? ? ? d i?(光标要放在花括号上)? ? ? ? ?删除花括号内的内容
? ? ? ? ? ? ? ? ? ? ? ? y i? ?(光标要放在括号上)? ? ? ? ? ?删除括号内容的内容
? ? ? ? 命令模式切换其他两种模式:(输入模式和末行模式之间不能相互切换)???????????????????????????? ? ? ? ? ? ? ?
? ? ? ? 输入模式: 使 Vim 进行输入模式的方式是在命令模式状态下输入 i、I、a、A、o、O 等插入命令,当编辑文件完成后按 Esc 键即可返回命令模式
快捷键 | 功能描述 |
---|---|
i | 在当前光标所在位置插入随后输入的文本,光标后的文本相应向右移动 |
I | 行首插入命令 |
o | 在光标所在行的下面插入新的一行。光标停在空行首,等待输入文本 |
O | 在光标所在行的上面插入新的一行。光标停在空行的行首,等待输入文本 |
a | 在当前光标所在位置之后插入随后输入的文本 |
A | 行尾插入命令 |
末行模式
?末行模式:文件中的指定内容执行保存、查找或替换等操作。使 Vim 切换到编辑模式的方法是在命令模式状态下按“:”(英文冒号)键,此时 Vim 窗口的左下方出现一个“:”符号,这是就可以输入相关指令进行操作了
? ? ? ? 查找替换? ? ? ?
? ? ? ? 先查找文件中的内容,然后,替换它
? ? ? ? 格式: 范围? $ /文章已有内容/替换的内容/修饰符? ? (/作为分隔符,#也可以作为分隔符,@也许? s? ? ? ? s###? ? ? ? s@@@)
? ? ? ? 范围:不写范围,光标当前行
? ? ? ? ????????%:全文
? ? ? ? ????????#:? #号行,#代表数字 例:2,5? ?2到5行
? ? ? ? ? ? ? ? $:? ? ?最后一行
? ? ? ? ? ? ? ?$-1:? ?倒数第二行
? ? ? ? ? ? ? 2,$:? ? 2到最后一行
? ? ? ? 修饰符: i? 忽略大小写
? ? ? ? ? ? ? ? ? ? ? ? g 全局替换,默认情况下,也就是不加修饰符的时候,每一行只替换第一次出现的
? ? ? ? ? ? ? ? ? ? ? ? c?全局替换,每次替换前询问
? ? ? ? 给所有行的开头加上#,再去掉
? ? ? ? ? ? ? ? %? s /^/#/? ? ? ?% s/^#//
????????注意:配置文件只有开头的 # 才是注释
????????
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!