Skip to content

Linux常用指令

切换路径

  • cd:change directory 改变当前终端的工作路径
    • 第一种cd 目标路径 切换到目标路径
      • 目标路径:可以是绝对路径也可以是相对路径
      • 示例:cd ~ 切换到家目录下
    • 第二种cd ~ 切换到上一次去到的路径
      • ~:历史路径/最近的路径
    • 第三种cd 直接使用表示切换到家目录
      • 示例:cd 切换到了家目录

列举目录/文件

  • ls:list 列举当前/指定目录下的文件夹和文件
    • 第一种ls 直接使用,会将当前目录下文件夹和文件列举在终端上(不包括隐藏文件)
    • 第二种ls [参数] 通过指定 ls 的特定参数实现特殊列举
      • ls -a:列举当前/指定文件夹下所有文件夹和文件(包含隐藏文件)
        • 在 Linux 下隐藏文件/文件夹以 . 开头
        • a 表示 all 全部
      • ls -l:列举当前/指定目录下的文件夹和文件及其属性信息(不包括隐藏文件)
        • 示例属性:drwxrwxrwx 1 root root 0 6月 28 17:22 Code
        • 格式:文件类型:文件名用户权限-链接数量-所属用户-创建者-大小-创建时间-名字
        • drwxrwxrwx:文件类型 + 用户权限
          • 文件类型符号
            • d:directory 目录文件
            • -:普通文件
            • s:socket 套接字文件
            • p:pipe 管道文件
            • l:link 链接文件
            • c:char 字符设备文件
            • b:block 块设备文件
          • 权限符号
            • rwx:一组权限(用户/组/其他用户)
            • r:read 可读取权限
            • w:write 可写入权限
            • x:excute 可执行权限
      • ls -help:调取 ls 指令帮助手册
    • 第三种ls 目标路径 指定目录列举
      • 示例:ls ~ 列举家目录下内容

注意:ls 的参数和目标路径可同时使用

复制

  • cp:copy 拷贝/复制
    • 第一种cp 源文件(可多个) 目标路径【/新名字】
      • 示例:cp ~/1.txt /mnt/hgfs/2.txt(复制并更名)
      • 示例:cp ~/1.txt /mnt/hgfs/(复制不更名)
    • 第二种cp 源路径(可多个) 目标路径【/新名字】
      • 示例:cp ~/ClassCode/ldir ~ -r(递归复制目录)
        • -r:recursive 递归复制

注意:不能将文件夹复制到文件中

移动/重命名

  • mv:move 移动/重命名
    • 第一种mv 需移动的文件/文件夹 目标路径
      • 示例:mv ~/1.txt ~/ClassCode(移动文件)
    • 第二种mv 需重命名的文件/文件夹 新名字
      • 示例:mv ~/1.txt ~/2.txt(重命名)

注意:跨目录重命名时,新名字需包含路径

创建普通文件

  • touch:创建新的普通文件
    • 用法:touch 文件名(可多个)
      • 示例:touch 3.txt(当前目录创建文件)

注意:文件名需包含扩展名

创建文件夹

  • mkdir:make directory 创建文件夹
    • 第一种mkdir 目录名(可多个,可含路径)
      • 示例:mkdir 2dir(当前目录创建)
    • 第二种mkdir [参数] 目录名
      • 示例:mkdir 2dir/3dir/4dir/5dir -p(嵌套创建)
        • -p:parents 自动创建不存在的父目录

删除

  • rm:remove 删除文件/文件夹
    • 第一种rm 文件名(可多个)
      • 示例:rm 1.txt(删除文件)
    • 第二种rm [参数] 文件/文件夹名(可多个)
      • 示例:rm 2dir -r(递归删除文件夹)
        • -r:recursive 递归删除

修改文件权限

  • chmod:change mode 修改权限
    • 权限表示
      • rwxrwxrwx:用户/组/其他用户权限
      • r:read,w:write,x:excute
    • 权限形式
      • 字符形式:rwx
      • 八进制形式:0777
    • 权限值对照
      • ---:无权限 → 八进制 0
      • r--:只读 → 4
      • -w-:只写 → 2
      • --x:仅执行 → 1
      • rw-:读写 → 6
      • r-x:读执行 → 5
      • -wx:写执行 → 3
      • rwx:读写执行 → 7
    • 用户类型
      • u:所属用户
      • g:所属组用户
      • o:其他用户
    • 修改方式
      • 第一种chmod +/- 权限值(字符) 文件/目录名
        • 示例:chmod -r 2dir(移除可读权限)
      • 第二种chmod 权限值(八进制) 文件/目录名
        • 示例:chmod 0664 2dir(设置权限为0664)
      • 第三种chmod 用户类型+/-权限值 文件/目录名
        • 示例:chmod u-rw 2dir(移除所属用户读写权限)

注意:避免在共享目录(如/mnt/hgfs)操作权限

判断文件类型

  • file:判断文件类型
    • 用法:file 文件名
    • 常见类型符号
      • d:目录文件
      • -:普通文件
      • b:块设备文件
      • s:套接字文件
      • l:链接文件
      • p:管道文件
      • c:字符设备文件

打印当前工作路径

  • pwd:print working directory
    • 用法:pwd

文件的压缩和归档

  • 压缩:将文件/目录压缩为单个文件
  • 归档:将文件/目录保存为单个文件
  • 常见压缩算法
    rar, zip, 7z, bz, iso, gzip...
  • tar:压缩/归档命令
    • 用法:tar [参数] 压缩文件名 需压缩的文件列表
    • 参数列表
      • c:指定解压缩路径
      • x:extract 释放归档文件
      • -c:create 创建归档文件
      • -v:view 显示过程信息
      • -f:file 指定文件名
      • -j:采用 bzip 算法压缩
      • -z:采用 gzip 算法压缩
    • 压缩操作
      • tar -zcvf 压缩文件名.tar.gz 文件列表
        • 示例:tar -zcvf backup.tar.gz ~/documents
    • 解压缩操作
      • tar -xvf 压缩文件名.tar.gz -c 目标目录
        • 示例:tar -xvf backup.tar.gz -c ~/restore

帮助手册

  • man:manual 查看帮助手册
    • 用法:man 命令/函数名
    • 同名命令处理
      • man -f 名称:列出同名命令
        • 输出示例:(1) cmd1, (2) cmd2...
      • man 页数 名称:查看指定手册
        • 示例:man 2 printf

注意:按 q 退出手册界面

临时超级管理员权限

  • sudo:super do 以管理员权限执行
    • 用法:sudo 需权限的指令
      • 示例:sudo apt-get install g++

切换用户

  • su:切换用户
    • 第一种su 用户名
      • 示例:su thirteen13
    • 第二种sudo su(切换至超级管理员)

其他命令

  • 关机命令
    • sudo shutdown now:立即关机
    • sudo shutdown nn分钟后关机(n为数字)
    • sudo shutdown -c:取消定时关机
  • 重启命令
    • sudo reboot
  • 设置密码
    • passwd 用户名
  • 清屏
    • clear
    • Ctrl + L
  • 查看文件内容
    • cat 文件名:显示文件内容
    • cat -n 文件名:带行号显示
  • 查找软件
    • which 软件名

作业

• 熟悉所有命令
• 完成 VSCode 远程连接配置

知识如风,常伴吾身