常见目录

目录 描述
/ 根目录
/boot 启动目录,启动相关文件
/dev 设备文件
/etc 配置文件
/home 普通用户的家目录,可以操作
/lib 系统库保存目录
/mnt 移动设备挂载目录
/media 光盘挂载目录
/misc 磁带机挂载目录
/root 超级用户的家目录,可以操作
/tmp 临时目录,可以操作
/proc 不能直接操作,保存的是内存的挂载点
/sys 不能直接操作,保存的是内存的挂载点
/var 变量
/bin 普通命令
/sbin 命令保存目录,级用户才可以执行的命令
/usr/bin 系统软件资源目录 面向普通用户的系统命令
/usr/sbin 系统软件资源目录 面向超级用户的系统命令

命令基本格式

命令提示符

# root:当前登录用户
# localhost:主机名
# ~:当前工作目录,默认是当前用户的家目录(root 就是 /root,普通用户是 /home/用户名)
# 提示符:超级用户是 #,普通用户是 $
[root@localhost ~]

ls

查询目录中的内容,ls [选项] [文件或者目录]

  1. 选项:

    • -a:显示所有文件,包括隐藏文件;
    • -l:显示详细信息;
    • -d:查看目录本身的属性而非子文件 ls /etc/;
    • -h:人性化的方式显示文件大小;
    • -i:显示 inode,也就是 i 节点,每个节点都有 ID 号;
  2. 默认当前目录下的文件列表;

文件处理命令

mkdir:创建文件夹

  • 语法:mkdir -p [目录名]

  • -p:递归创建;

  • 示例:mkdir -p lib/css/head.css

cd:切换所在目录

  • 语法:cd [目录]

    • ~ 家目录
    • . 当前目录
    • … 上级目录
  • 相对路径是参照当前所在目录

  • 绝对路径是从根目录开始

  • 按 TAB 键可以补全命令和目录

pwd:显示当前目录

rmdir:删除空目录(remove empty directory)

  • 语法:rmdir [目录名]

  • 示例:rmdir lib

rm:删除文件或者目录

  • 语法:rm [文件或者目录]

  • -r:删除目录

  • -f:强制删除

  • rm -rf 文件或者目录 递归强制删除所有目录

cp:拷贝

  • 语法:cp [源文件或者目录] [目标文件]

  • -r:复制目录,默认是复制文件

  • -p:连带文件属性复制

  • -d:若源文件是链接文件,则复制连接属性

  • -a:相当于 -rpd

mv:移动文件或者改名

  • 语法:mv [源文件或者目录] [目标文件]

  • 示例:mv 1.txt 11.txt

ln:创建软连接

  • 语法:ln -s [源文件或目录(必须是绝对路径)] [目标文件或目录]

  • 类似 Windows 快捷方式

  • 修改任意一个文件,另一个都会改变

  • 删除源文件,软链接不能使用

  • 软链接源文件必须写绝对路径

文件搜索

locate

  • 在后台数据库中按文件名搜索,速度比较快

  • 数据保存在 /var/lib/mlocate/mlocate.db 后台数据库,每天更新一次

  • 可以 updatedb 命令立刻更新数据库

  • 只能搜索文件名

  • /etc/updatedb.conf 建立索引的配置文件:

    • PRUNE_BIND_MOUNTS = “yes” 全部生效,开启搜索限制
    • PRUNEFS 不搜索的文件系统
    • PRUNENAMES 忽略的文件类型
    • PRUNEPATHS 忽略的路径 /tmp

whereis

  • 搜索命令所在路径以及帮助文档所在位置

  • whereis 命令名 whereis ls

  • -b 只查找可执行文件

  • -m 只查找帮助文件

  • 可以查看Shell自带的命令,如 whereis cd

which

  • 可以看到别名 which ls

  • 能看到的都是外部安装的命令

  • 无法查看 Shell 自带的命令,如 which cd

find

  • 文件搜索命令(避免大范围的搜索,会非常消耗系统资源)

  • find [搜索范围] [搜索条件]

  1. 按名称搜索

    # 在根目录下搜索文件名是 aaa.log 的文件
    find / -name aaa.log
    
  2. 通配符

    # 在根目录下搜索文件名是 aaa.log 的文件
    #  * 匹配任意内容
    #  ? 匹配任意一个字符
    #  [] 匹配任意一个中括号内的字符 
    
    # 在当前目录下搜索文件名字是 abc | abd 的文件
    find . -name "ab[cd]"
    
  3. 不区分大小写

    # 在根目录下搜索文件名是 A.log | a.log 的文件
    find / -iname A.log
    
  4. 按所有者进行搜索

    # 在 /root 目录下搜索文件所属用户是 root 的文件
    find /root -user root 
    
    # 在 /root 目录下搜索没有所属用户的文件
    find /root -nouser
    
  5. 按时间搜索

    # 在根目录下查找 1 天前被访问的文件
    find / -atime  +1
    
    # 在根目录下查找 1 天前当前修改文件属性的文件
    find / -ctime  1
    
    # 在根目录下查找 1 天内修改文件内容的文件
    find / -mtime  -1
    
  6. 按大小搜索(k小写,M大写)

    # 在当前目录寻找文件大小等于 100k 的文件
    find . -size 100k
    
    # 在当前目录寻找文件大小大于 100M 的文件
    find . -size +100M
    
    # 在当前目录寻找文件大小小于 100M 的文件
    find . -size -100M
    
  7. 综合应用

    # 查找 / 目录下,大于 10KB 并且小于 20KB 的文件
    #  -a and 逻辑与,两个条件都满足
    #  -o or 逻辑或,两个条件满足一个就可以
    # exec 对命令的结果进行操作
    find / -size +10k -a -size -20k -exec ls -lh {} \;
    
  8. grep:在文件当中匹配符合条件的字符串

    # 在 / 下查找文件小于 10KB 并且内容包含 'a' 的文件
    find / -size -10k | grep "a"
    

压缩与解压缩

zip 格式

压缩文件、文件夹

# 压缩 book.txt 为 book.zip
zip book.zip book.txt

# 压缩 book 文件夹为 book.zip
zip -r book.zip ./book/

# 解压缩 book.zip
unzip book.zip

gzip 格式

只能用来压缩文件,不能压缩目录,即便指定了目录,也只能压缩目录内的所有文件

# 压缩 a.txt,源文件会消失
gzip a.txt
# 压缩 a.txt,源文件不会消失
gzip -c a.txt
# 压缩目录下的所有子文件,但是不压缩目录
gzip -r xx

# 解压缩 a.txt.gz
gzip -d a.txt.gz
gunzip a.txt.gz

tar 格式

可打包文件、文件夹,只打包不压缩

  • tar -cvf 打包文件名 源文件

    • -c 打包
    • -v 显示过程
    • -f 指定打包后的文件名
  • x 解打包

# 打包 /book/ 为 book.tar
tar -cvf book.tar /book/

# 解打包 book.tar
tar -xvf book.tar

tar.gz 格式

gzip 不能压缩文件夹,则先用 tar 打包,再用 gzip 压缩

# 打包 /book/ 为 book.tar,再压缩成 book.tar.gz
tar -zcvf book.tar.gz /book/

# 解压缩 book.tar.gz
tar -zxvf book.tar.gz
打赏作者
您的打赏是我前进的动力
微信
支付宝
评论

中午好👏🏻,我是 ✍🏻   疯狂 codding 中...

粽子

这有关于前端开发的技术文档和你分享。

相信你可以在这里找到对你有用的知识和教程。

了解更多

目录

  1. 1. 常见目录
  2. 2. 命令基本格式
    1. 2.1. 命令提示符
    2. 2.2. ls
  3. 3. 文件处理命令
    1. 3.1. mkdir:创建文件夹
    2. 3.2. cd:切换所在目录
    3. 3.3. pwd:显示当前目录
    4. 3.4. rmdir:删除空目录(remove empty directory)
    5. 3.5. rm:删除文件或者目录
    6. 3.6. cp:拷贝
    7. 3.7. mv:移动文件或者改名
    8. 3.8. ln:创建软连接
  4. 4. 文件搜索
    1. 4.1. locate
    2. 4.2. whereis
    3. 4.3. which
    4. 4.4. find
  5. 5. 压缩与解压缩
    1. 5.1. zip 格式
    2. 5.2. gzip 格式
    3. 5.3. tar 格式
    4. 5.4. tar.gz 格式