Linux学习
Linux命令查看网站
Linux命令大全
Linux命令手册
Linux命令大全(手册)
Linux命令
文件及目录管理命令
mkdir
作用:创建目录
常用参数:
-p | 递归创建多级目录 |
-m | 建立目录的同时设置目录的权限 |
-z | 设置安全上下文 |
-v | 显示目录的创建过程 |
rm
作用:删除
常用参数:
-f | 忽略不存在的文件,不会出现警告信息 |
-i | 删除前会询问用户是否操作 |
-r/R | 递归删除 |
-v | 显示指令的详细执行过程 |
mv
作用:移动文件、文件名重命名
常用参数:
-i | 若存在同名文件,则向用户询问是否覆盖 |
-f | 覆盖已有文件时,不进行任何提示 |
-b | 当文件存在时,覆盖前为其创建一个备份 |
-u | 当源文件比目标文件新,或者目标文件不存在时,才执行移动此操作 |
cp
作用:复制文件
常用参数:
-f | 若目标文件已存在,则会直接覆盖原文件 |
-i | 若目标文件已存在,则会询问是否覆盖 |
-p | 保留源文件或目录的所有属性 |
-r | 递归复制文件和目录 |
-d | 当复制符号连接时,把目标文件或目录也建立为符号连接,并指向与源文件或目录连接原始文件或目录 |
-l | 对源文件建立硬连接,而非复制文件 |
-s | 对源文件建立符号连接,而非复制文件 |
-b | 覆盖已存在的文件目标前将目标文件备份 |
-v | 详细显示cp命令执行的操作过程 |
-a | 等价于“dpr”选项 |
touch
功能:1.更新文件时间标签 2.创建空文件
dd
作用:复制文件并对原文件的内容进行转换和格式化处理
常用参数:
bs=<字节数> | 将 ibs(输入)与 obs(输出)设成指定的字节数; |
cbs=<字节数> | 转换时,每次只转换指定的字节数; |
conv=<关键字> | 指定文件转换的方式; |
count=<区块数> | 仅读取指定的区块数; |
ibs=<字节数> | 每次读取的字节数; |
obs=<字节数> | 每次输出的字节数; |
of=<文件> | 输出到文件;如果不指定of,默认就会将stdout作为默认输出。 |
if=<文件> | 输入文件;如果不指定if,默认就会从stdin中读取输入。 |
seek=<区块数> | 一开始输出时,跳过指定的区块数; |
skip=<区块数> | 一开始读取时,跳过指定的区块数; |
示例:
以上命令可以看出dd命令来测试内存操作速度
1 | dd if=/dev/zero of=test.txt bs=5M count=1 #/dev/zero 是一个字符设备,会不断返回0值字节(\0)。 |
file
作用:探测给定文件的类型
常用参数:
-b | 列出辨识结果时,不显示文件名称 |
-i | 显示MIME类别 |
查找文件及目录
find
作用:查找文件及目录
常用参数:
-amin <分钟>、-atime <24小时数> | 访问时间,用户最近一次访问时间。 |
-cmin <分钟>、-ctime <24小时数> | 修改时间,文件最后一次修改时间。 |
-mmin <分钟>、-mtime <24小时数> | 变化时间,文件数据元(例如权限等)最后一次修改时间。 |
-name <范本样式> | 指定字符串作为寻找文件或目录的范本样式,可使用正则表达式进行匹配 |
-iname <范本样式> | 此参数的效果和指定“-name”参数类似,但忽略字符大小写的差别 |
-size <文件大小> | 查找符合指定的文件大小的文件 |
-type <文件类型> | 只寻找符合指定的文件类型的文件 |
-empty | 寻找文件大小为0 Byte的文件,或目录下没有任何子目录或文件的空目录 |
示例:
根据文件或者正则表达式进行匹配
1 | 在/home目录下查找以.txt结尾的文件名 |
否定参数
1 | 找出/home下不是以.txt结尾的文件 |
根据文件类型进行搜索find . -type 类型参数
- f 普通文件
- l 符号连接
- d 目录
- c 字符设备
- b 块设备
- s 套接字
- p 管道文件
根据文件时间戳进行搜索find . -type f 时间戳
UNIX/Linux文件系统每个文件都有三种时间戳:
访问时间(-atime/天,-amin/分钟):用户最近一次访问时间。
修改时间(-mtime/天,-mmin/分钟):文件最后一次修改时间。
变化时间(-ctime/天,-cmin/分钟):文件数据元(例如权限等)最后一次修改时间。
1 | 搜索最近七天内被访问过的所有文件 |
根据文件大小进行匹配find . -type f -size 文件大小单元
文件大小单元:
- b —— 块(512字节)
- c —— 字节
- w —— 字(2字节)
- k —— 千字节
- M —— 兆字节
- G —— 吉字节
1 | 搜索大于10KB的文件 |
删除匹配文件
1 | 删除当前目录下所有.txt文件 |
借助exec选项与其他命令结合使用
1 | 找出当前目录下所有root的文件,并把所有权更改为用户tom |
locate
作用:locate命令其实是find -name的另一种写法,但是要比后者快得多,原因在于它不搜索具体目录,而是搜索一个数据库/var/lib/locatedb
,这个数据库中含有本地所有文件信息。Linux系统自动创建这个数据库,并且每天自动更新一次,所以使用locate命令查不到最新变动过的文件。为了避免这种情况,可以在使用locate之前,先使用updatedb
命令,手动更新数据库。
查看文件内容
cat
作用:连接文件并打印到标准输出设备上
常用参数:
-n | 由1开始对所有输出的行数编号 |
-A | 显示不可打印字符,行尾显示“$” |
head
作用:用于显示文件的开头的内容,默认显示头10行。
常用参数:
-n <数字> | 指定显示头部内容的行数 |
-v | 显示文件名 |
tail
作用:用于显示文件的尾部内容,默认显示尾10行。
常用参数:
-f | 显示文件最新追加的内容。 |
-n <数字> | 输出文件的尾部N(N位数字)行内容 |
-v | 显示文件名 |
more
作用:它以全屏幕的方式按页显示文本文件的内容
按键说明
按Space键 | 显示文本的下一屏内容。 |
按Enier键 | 只显示文本的下一行内容。 |
按斜线符/ | 接着输入一个模式,可以在文本中寻找下一个相匹配的模式。 |
按H键 | 显示帮助屏,该屏上有相关的帮助信息。 |
按B键 | 显示上一屏内容。 |
按Q键 | 退出rnore命令。 |
查找文件内容
grep
作用:能使用正则表达式搜索文本,并把匹配的行打印出来。
常用参数:
-v | 反转查找 |
-r | 递归搜索 |
-n | 列出所有的匹配行,显示行号 |
-E | 正则表达式,与egrep 效果相同 |
-i | 忽略字符大小写 |
-e | 匹配多个,grep -e “a” -e “b” |
-q | 静默输出,命令运行成功返回0,失败则返回非0值 |
-A < n > | 匹配文本之后n行 |
-B < n > | 匹配文本之前n行 |
-C < n > | 匹配文本前后各n行 |
文本处理
xargs
作用:xargs能够处理管道或者stdin并将其转换成特定命令的命令参数