文件处理命令

命令格式与目录处理命令ls

  • 格式
    • 命令 [-选项] [参数],如 ls -la /etc
  • ls 文件列表(目录)
  • ls -a(all) 查看该目录下所有文件包含隐藏文件(以 . 开头)
  • ls -l(long) OR ls -lh -h 人性化查看信息(比如文件大小)
    • 文件用户角色:所有者u,所属组g,其他人o
    • 文件权限:r读,w写,x执行
  • ls -ld /etc 查看当前目录信息

目录处理命令

  • 创建目录
    • mkdir 创建新目录
    • madir -p [路径名] 递归创建
    • 支持同时创建多个目录
  • 切换目录
    • cd [目标目录名]
    • pwd 显示当前所在目录的绝对路径
      • . 表示当前目录
      • .. 表示上一级目录
  • 删除目录
    • rmdir (remove empty directories) 删除目录
    • rm [文件名] 删除文件
    • rm -f [文件名] 强制删除文件
    • rm -rf [目录名] 删除目录
  • 复制文件或目录
    • cp -rp [原文件或目录] [目标目录]
    • -r 复制目录
    • -p 保存文件属性(如不修改复制后文件的最后执行操作时间)
    • 支持同时复制多个文件,以及修改名称(复制后文件)
  • 剪切文件和改名
    • mv [原文件或目录] [目标目录] (move)
    • 同一个目录下移动,即改名


文件处理命令

  • 创建空文件
    • tough [文件名]
  • 显示文件内容
    • cat [文件名]
    • cat -n [文件名] 显示行号
    • tac [文件名]
    • more [文件名] 分页显示文件内容(按 B 往前翻页)
    • less [文件名] 分页显示文件内容(可向上翻页 PageUp
    • head -n [数字] [文件名] 显示文件前面几行
    • tail -n [数字] [文件名] 显示文件后面几行

链接命令

  • ln -s [原文件] [目标文件]
    • -s (soft)创建软链接(类似 windows 快捷方式)
      • 软链接权限 rwx with u/g/o
      • 文件大小 - 只是符号链接
      • 软链接目标文件指向源文件
  • ln [原文件] [目标文件] 硬链接
    • cp -p 复制文件 相比,硬链接可以同步更新
    • 原文件丢失,硬链接依然可以访问(共享 i 节点)
    • 不能跨分区
    • 不能针对目录使用(仅针对文件)

权限管理命令

更改权限 chmod

  • chmod 改变文件或目录权限(针对文件所有者或root)
    • chmod [{ugoa} {+-=} {rwx}] [文件或目录]
    • 支持同时多个授权,采用逗号分隔
    • 重要】一般情况下,使用数字表示对权限进行标记
      • r —- 4 —- (22)
      • w —- 2 —- (21)
      • x —- 1 —- (20)
      • chmod [数字表示] [文件或目录]
    • -R 递归修改(改变目录权限的同时,该目录下所有的文件及目录均被修改)
  • 权限理解 | 代表字符 | 权限 | 对文件的含义 | 对目录的含义 | | —- | —- | —- | —- | | r | 读权限 | 可以查看文件内容
    [cat/more/less/head/tail] | 可以列出目录中的内容
    [ls] | | w | 写权限 | 可以修改文件内容
    [vim] | 可以在目录中创建、删除文件
    [touch/mkdir/rmdir/rm] | | x | 执行权限 | 可以执行文件
    [scipt/command] | 可以进入目录
    [cd] |

其他权限

更改文件的所有者 chown

  • chown [用户] [文件或目录] 改变文件或目录的所有者

    更改文件的所属组 chgrp

  • chgrp [用户组] [文件或目录] 改变文件或目录的属组

注意:所有者(创建文件或目录的用户)
所属组(文件或目录创建者的缺省组)

显示 、设置文件的缺省权限

  • umask [-S] -S 以rwx形式显示新建文件或目录缺省权限
  • 缺省创建的文件touch(即非目录mkdir),不具有可执行权限
    • 更改缺省创建的文件或目录权限,使用umask [权限数字符号]
    • 默认 [-S],权限为 rwx r-x r-x (目录) OR rw- r-- r-- (文件)
      • 该权限是通过 022(即--- -w- -w-) 通过与 777(即 rwx rwx rwx) 进行逻辑与运算得到
    • 可以修改,通过上述方式进行推算
      • 假设,需要将最终将目录权限变为 rwx --- --- 或 文件权限变为 rw- --- --- ,则可以设置 umask 077 的值为 077 (即 --- rwx rwx)

文件搜索命令

文件搜索命令 find

  • find [搜索范围] [匹配条件] 文件搜索
    • find /etc -name init 根据文件名字搜索,在目录/etc中查找文件init
      • 可使用通配符 *init* 表示文件名中含有 init 字符的文件 * 匹配任一字符
      • 使用 init??? 表示文件名后含有3个字母的文件 ? 匹配单个字符
      • -iname 可不用区分大小写
    • find / -size +204800 在根目录下查找大于100MB的文件
      • + 表示大于,- 表示小于
      • 大小为数据块,1数据块 = 512字节 = 0.5K
      • **-a** 两个条件同时满足(and)
        • find /etc -size +163840 -a -size -204800/etc目录下查找大于80MB小于100MB的文件
      • **-o** 两个条件满足任一一个即可 (or)
    • find /home -user striver 在根目录下查找所有者为 striver 的文件
      • -group 根据所属组查找
    • find /etc -cmin -5/etc下查找5分钟内被修改过属性的文件和目录
      • -amin 访问时间 access
      • -cmin 文件属性 change
      • -mmin 文件内容 modify
    • -type 根据文件类型查找
      • **f** 文件(file);**d** 目录(directory);**l** 软链接文件(link)
    • -inum 根据 i 节点查找(可以用来删除文件名较复杂的文件)
    • find /etc -name inittab -exec ls -l {} \;/etc 目录下查找 inintab 文件并显示其详细信息
      • -exec/-ok [命令] {} \; 对搜索结果执行操作
        • -exec/-ok 区别在于 -ok 有一个询问确认的环节
        • [命令] 命令部分,如ls -l
        • {} 表示搜索结果
        • \ 转义符
        • ; 表示结束

通过文件资料库中查找文件 locate

  • locate [文件名]
    • updatedb 刷新文件资料库
    • locate 无法查找 /tmp 目录下的文件
    • 节省系统资源,可以更快的查找
    • locate -i [文件名] 不缺分大小写

查找命令所在的目录

  • which [命令] 搜索命令所在目录及别名信息
    • which ls
  • whereis [命令] 搜索命令所在目录及帮助文档路径
    • whereis ls

通过文件内容搜索

  • grep -iv [指定字串] [文件] 在文件中搜索字串匹配的行并输出
    • -i 不区分大小写
    • -v 排除指定字串
    • grep mysql /root/install.log

帮助命令

  • man [命令或配置文件] 获得帮助信息
    • 不需要定位到绝对路径
    • 1 - 命令的帮助;5 - 配置文件的帮助
      • man 5 passwd
  • whatis [命令] 只查看命令的简短信息
  • apropos [配置文件] 只查看配置文件的简短信息
  • [命令] --help 查看命令的常用选项
  • date 查看时间(man date 查看时间格式)
  • help [命令] 获得Shell内置命令的帮助信息
    • help umask
    • 使用 type [命令] 可以查看命令是否属于 Shell 内置命令

用户管理命令

  • useradd 用户名 添加新用户
  • passwd 用户名 设置用户密码
  • who 查看登录用户信息
    • 登录用户名 登录终端(tty —- 本地登录;pts —- 远程登录) 登录时间 登录主机IP
  • w 查看用户详细登录信息
    • 连续运行多久
    • 服务器负载情况
    • 当前用户正在执行什么命令
    • 当前执行命令占用多少CPU时间 PCPU
    • 当前登录用户累计占用多少CPU时间 JCPU

压缩解压命令

  • 压缩命令:gzip [文件名] 打包文件

    • 压缩后文件格式
    • 解压缩:gunzip [压缩文件]
    • 无法压缩目录
    • 压缩文件不保存原文件
  • 压缩命令 打包目录

    • tar [-zcf] [压缩后文件名] [目录]
      • -c 打包 (一般打包文件后为 .tar 格式)
      • -v 显示详细信息
      • -f 指定文件名 (放在最后)
      • -z 打包同时压缩 (压缩文件后格式为 .tar.gz 格式)
    • 解压缩命令 tar [-xcf] [压缩文件]
      • -c 解包
      • -v 显示详细信息
      • -f 指定解压文件 (放在最后)
      • -z 解压缩
  • 压缩文件或目录 zip [-r] [压缩后文件名] [文件或目录]

    • [-r] 压缩目录
    • 压缩后文件格式:.zip
    • 解压缩 unzip [压缩文件]
    • 文件或目录均可压缩
  • 压缩文件 bzip2 [-k] [文件]

    • [-k] 产生压缩文件后保留原文件
    • 压缩比相比 zip 要强
    • 压缩后文件格式:.bz2
    • 可与 tar 结合 tar -cjf [压缩后文件名] [目录]
      • tar -cjf Japan.tar.bz2 Japan
      • 解压缩 tar [-cjf] [压缩文件]
    • 解压缩 bunzip2 [压缩文件]
      • 可使用 -k

网络命令

关机重启命令