Linux操作系统使用及C高级编程-D4Linux shell命令(文件搜索、文件处理、压缩解压)

查看文件相关命令

cat

cat file:将文件内容输出

cat:等待输入,在屏幕上输入什么,就输出什么

tac

cat file:与cat相反,将文件内容从后往前输出

more

more file:在屏幕上显示一页的文件内容,若想继续显示可按回车键

less

less file:在屏幕上显示一页的文件内容,使用上下键操纵显示内容,按q结束。与more不同是仅显示一页内容

显示前十行

硬链接和软链接

硬链接可以作备份使用,软连接可以作文件别名使用

ls -i file:查看文件的inode号

ln

ln -s target link_name

-s:创建软链接,若没有则默认创建硬链接(和目标文件具有相同的inode)

target:目标文件

link_name:链接文件名

文件搜索相关命令

文件名查找find

find [起始目录] 寻找条件 操作

find . -name "file":在当前目录下寻找名字叫file的文件

find /home "file":在home目录下寻找file文件

按普通文件/链接文件查找

与或非

找到名字不是file的文件,并执行rm操作

文件内容查找grep

在当前目录下查找,忽略大小写,显示行号

which

定位命令存在何处

whereis

相比较which,可显示源码、man手册等的位置

文件处理相关命令

剪切文件内容cut

在/etc/passwd中查找linux行的内容,并通过管道输出给cut命令,cut使用-c 1取出第一个字符l

取前三个字符也可用:1-3,从头取到尾端:1-,从头取到5:-5

以字符linux为分隔符,取出第一段,第二段,第一二段

查看并修改文件中的内容sed

打印文件中内容1-4行:sed '1,4p' file

删除文件第一行:sed -i '1d' file

删除文件最后一行:sed -i '$d' file

往文件最后一行追加hi:sed -i '$ahi' file

将文件中的linux换成Linux:sed -i 's/linux/Linux/g' file

其中/g的作用是全部替换,不加则是只替换第一个

替换20-34行的文件内容Linux为Lee:sed -i '20,34s/Linux/Lee/g' file

文件内容行操作awk

pattern是命令

打印完整记录

打印第一列

打印第一二列

打印第一列,并显示打印出列的有多少列

打印最后一列

awk是以空行作为分割符,若想指定分割符,可使用-F命令,下图若不指定以:为分割符则会打印全部内容,而不是第一列

判断第一列中是否有tftp,若有,则全部打印

直接将第一列赋值为tftp,并打印

解压缩相关命令

gzip和gunzip

将一个文件压缩和解压缩.gz文件

缺点是:没有归档功能,只能一次压缩或者解压缩一个文件

而看下图的命令,是对文件分别压缩

下图中表明,如果是一个目录则无法进行压缩

bzip和bunzip

zip和unzip

使用方式,可对多个文件一起归档压缩

解压缩

使用最多tar

​​​​​​​​​​​​​​​​​​​​​​

使用-cf是进行归档成指定文件名

使用-cjf命令将文件归档压缩为test.tar.bz2文件,使用-czf同样的道理

对test.tar.bz2进行解压缩​​​​​​​​​​​​​​​​​​​​​​​​​​​​

对test.tar.gz进行解压缩

记住:tar就是使用xvf,tar.bz2就是使用xvjf,tar.gz就是使用xvzf

相关推荐
其实防守也摸鱼13 分钟前
GDB安装与配置(保姆级教程)【Linux、Windows系统】
linux·运维·windows·命令模式·工具·虚拟机·调试
Elastic 中国社区官方博客6 小时前
为 Elastic Cloud Serverless 和 Elasticsearch 引入统一的 API 密钥
大数据·运维·elasticsearch·搜索引擎·云原生·serverless
Agent手记6 小时前
制造业数字化升级:生产全流程企业级智能体落地解决方案 —— 基于LLM+超自动化全栈架构的智改数转深度实战
运维·ai·架构·自动化
云安全助手6 小时前
弹性云服务器+高防IP:让DDoS攻击不再是业务“生死劫”
运维·网络·安全
AC赳赳老秦7 小时前
OpenClaw二次开发实战:编写专属办公自动化技能,适配个性化需求
linux·javascript·人工智能·python·django·测试用例·openclaw
深色風信子7 小时前
Docker newapi
运维·docker·容器·newapi
mounter6257 小时前
【内核新动向】告别物理槽位束缚:深度解析 Linux Virtual Swap Space 机制
linux·内存管理·kernel·swap·virtual swap
handler017 小时前
从零实现自动化构建:Linux Makefile 完全指南
linux·c++·笔记·学习·自动化
2023自学中8 小时前
i.MX6ULL 板子的完整启动流程图(从上电 → 用户空间)
linux·嵌入式
闫利朋8 小时前
Ubuntu 24.04 桌面安装向日葵完整指南
linux·运维·ubuntu