当前位置: 首页 > news >正文

【Linux】常用命令二

声明:以下内容均学习自《Linux就该这么学》一书。

1、cat

用于查看内容较少的纯文本文件。

参数-n可以显示行号。

2、more

用于查看内容较多的纯文本文件。

它会在最下面使用百分比的形式来提示你已经月读了多少内容,你可以使用空格键或回车键向下翻页。

3、head

用于查看纯文本文档的前N行。

4、tail

用于查看纯文本文档的后N行和持续刷新内容。

tail -f

实时查看持续刷新的文件的内容.

 5、tr

用于替换文本文件中的字符。格式:tr 原字符 新字符

可以配合cat命令进行替换操作,如:cat 2024-11-30-log.log | tr [a-z] [A-Z]

 6、wc

用于统计指定文本的行数、字数、字节数。

wc -l:只显示行数

wc -w:只显示单词数

wc -c:只显示字节数

也可以任意组合参数一起使用,如wc -lw

 7、stat

用于查看文件的具体存储信息和时间等信息。

8、cut

用于按列提取文本字符。需要使用 -f 参数设置需要看的列数和 -d 参数设置间隔符号。

如下示例表示按照冒号分割,然后提取第一列的内容。

9、diff

用于比较多个文本文件的差异。

diff --brief:显示比较后的结果

diff -c:描述文件内容的具体不同之处。

 10、touch

用于创建空白文件或设置文件的时间。

对touch命令来说,有难度的操作主要是设置文件内容的修改时间(mtime)、文件权限或属性的更改时间(ctime)与文件的读取时间(atime)。

touch命令的参数及作用
-a仅修改“读取时间”(atime)
-m仅修改“修改时间”(mtime)
-d同时修改atime与mtime

 以下示例为修改文件时间:把修改后的文件时间设置成修改之前的时间(很多黑客就是这样做的)

11、mkdir

用于创建空白目录。

结合 -p 参数创建嵌套层目录,如:mkdir -p /test/ln/2024

12、cp

用于复制文件或目录。

cp命令的参数及作用
-p保留原始文件的属性
-d若对象为“链接文件”,则保留该“链接文件”的属性
-r递归持续复制(用于目录)
-i若目标文件存在则询问是否覆盖
-a等同于-pdr三者的共同作用

13、mv

用于剪切文件或将文件重命名。

如果在同一个目录中对一个文件进行剪切操作,其实就是对其进行重命名。

14、rm

用于删除文件或目录。

rm -f:强制删除(不会让你反复确认“是否删除”)

rm -r:删除目录。

15、dd

用于按照指定大小和个数的数据块来复制文件或转换文件;也可以在复制过程中转换其中的数据。

它也可以把光驱设备中的光盘制作成可立即使用的iso格式的镜像文件。

dd命令的参数及作用
if输入的文件名称
of

输出的文件名称

bs设置每个“块”的大小
count设置要复制“块”的个数。

16、file

用于查看文件的类型。

17、tar

用于对文件进行打包压缩或解压。

tar命令的参数及作用
-c创建压缩文件
-x解开压缩文件
-t查看压缩包内有哪些文件
-z用Gzip压缩或解压
-j用bzip2压缩或解压
-v显示压缩或解压的过程
-f目标文件名
-P保留原始的权限与属性
-p使用绝对路径来压缩
-C指定解压到的目录

18、grep

用于在文本中执行关键词搜索,并显示匹配的结果。

grep命令的参数及作用
-b将可执行文件(binary)当做文本文件(text)来搜索
-c仅显示找到的行数
-i忽略大小写
-n显示行号
-v反向选择——列出没有关键词的行

19、find

用于按照指定条件来查找文件

find命令参数及作用
-name匹配名称
-perm匹配权限(mode为完全匹配,-mode为包含即可)
-user匹配所有者
-group匹配所有组
-mtime -n +n匹配修改内容的时间(-n:n天以内,+n:n天以前)
-atime -n +n匹配访问文件的时间(-n:n天以内,+n:n天以前)
-ctime -n +n匹配修改文件权限的时间(-n:n天以内,+n:n天以前)
-nouser匹配无所有者的文件
-nogroup匹配无所有组的文件
-newer f1 !f2匹配比文件f1新但比f2旧的文件
--type b/d/c/p/l/f匹配文件类型(字母依次表示块设备、目录、字符设备、管道、链接文件、文本文件)
-size匹配文件的大小(+50KB为查找超过50KB的文件,-50KB为查找小于50KB的文件)
-prune忽略某个目录
-exec用于把find命令搜索到的结果交由紧随其后的命令做进一步处理

19、alias、unalias

用于创建一个属于自己的命令别名。理解为给某个人起了一个外号,当你叫这个外号时指的还是这个人。

# 将‘rm -f’命令起个别名为rm, 执行rm时就相当于执行rm -f
alias rm='rm -f'# 取消命令别名
unalias rm

20、type

用来判断用户输入的命令是内部命令还是外部命令:type 命令名称

内部命令是Bash解释器内部的指令,会被直接执行;但绝大部分输入的都是外部命令。


http://www.mrgr.cn/news/78840.html

相关文章:

  • 【MyBatis源码】异常拆包工具ExceptionUtil
  • 量化交易系统开发-实时行情自动化交易-8.量化交易服务平台(二)
  • 深度学习实验十三 卷积神经网络(4)——使用预训练resnet18实现CIFAR-10分类
  • 达梦数据库常用指令都是工作中常用的
  • taro使用createAsyncThunk报错ReferenceError: AbortController is not defined
  • qt-unified-windows-x64-online
  • 【实验13】使用预训练ResNet18进行CIFAR10分类
  • Docker基础使用
  • 【MySQL — 数据库基础】MySQL的安装与配置 & 数据库简单介绍
  • LearnOpenGL学习(光照 -- 颜色,基础光照,材质,光照贴图)
  • 数据结构之三:栈和队列
  • Web登录页面设计
  • 用go语言写一个小服务
  • 手机卡限速丨中国移动5G变3G,网速500kb
  • 单链表---移除链表元素
  • LearnOpenGL学习(光照 -- 颜色,基础光照,材质)
  • go使用mysql实现增删改查操作
  • 我们来学mysql -- 事务之概念(原理篇)
  • 深度学习 | pytorch + torchvision + python 版本对应及环境安装
  • spring boot3.3.5 logback-spring.xml 配置
  • create-vue创建vue3项目
  • 【2024】使用Docker搭建redis sentinel哨兵模式集群全流程(包含部署、测试、错误点指正以及直接部署)
  • dpwwn02靶场
  • uniapp手机端一些坑记录
  • 基于go语言探讨 Kubernetes 中 Rollout History 的实现与优化
  • Java启动通用参数,自动记录GC等信息到专门日志文件中