Linux 目录结构和基本 Linux 命令

Linux 目录结构和命令学习笔记


目录结构

Linux 的目录结构遵循 Filesystem Hierarchy Standard (FHS),确保了不同的 Linux 发行版之间有一致的目录结构。以下是主要的目录及其用途:

  1. / (根目录)

    • 所有文件和目录的起点。
  2. /bin (Binary)

    • 存放基本用户命令的二进制文件,如 lscpmv 等。
  3. /boot

    • 存放引导加载程序相关的文件,包括内核和启动引导配置文件。
  4. /dev (Device)

    • 包含设备文件,表示系统中的各种设备。
  5. /etc

    • 存放系统管理和配置文件,如网络配置、用户账户信息等。
  6. /home

    • 各用户的主目录,用户数据文件通常存放在这里。
  7. /lib (Library)

    • 存放系统和程序所需的共享库文件,以及内核模块。
  8. /media

    • 挂载点,用于临时挂载可移动媒体设备(如 CD-ROM、USB)。
  9. /mnt

    • 挂载点,用于临时挂载文件系统。
  10. /opt (Optional)

    • 用于安装附加的应用软件包。
  11. /proc

    • 虚拟文件系统,存放系统进程和内核信息。
  12. /root

    • 超级用户(root 用户)的主目录。
  13. /run

    • 用于存放系统启动以来的信息。
  14. /sbin (System Binary)

    • 存放系统管理命令的二进制文件,只有 root 用户可以运行的命令。
  15. /srv (Service)

    • 存放服务相关的数据文件。
  16. /tmp (Temporary)

    • 存放临时文件,系统重启后可能会被清空。
  17. /usr (User)

    • 包含用户应用程序和文件的子目录,如 /usr/bin、/usr/lib。
  18. /var (Variable)

    • 包含经常变化的文件,如日志文件、缓存、邮件等。

基本格式

Linux 命令的基本格式通常为:

command [选项] [参数]
  • command: 命令名,如 lscdmkdir 等。
  • 选项: 修改命令行为的选项,通常以 --- 开头,如 -l-a--help
  • 参数: 命令操作的对象,如文件名或目录名。

文件和目录操作
  1. ls: 列出目录内容。

    ls /home
    ls -l /home
    ls -a /home
    
    • ls: 列出指定目录的内容。如果未指定目录,则列出当前目录的内容。
    • -l: 以长格式列出目录内容,显示文件的详细信息,包括权限、所有者、文件大小和最后修改时间。
    • -a: 列出所有文件,包括隐藏文件(以.开头的文件)。
  2. cd: 更改当前目录。

    cd /home
    cd ..
    cd ~
    
    • cd /path/to/directory: 进入指定目录。
    • cd ..: 返回上一级目录。
    • cd ~cd: 返回到当前用户的主目录。
  3. pwd: 显示当前工作目录。

    pwd
    
    • pwd: 显示当前工作目录的绝对路径。
  4. mkdir: 创建新目录。

    mkdir new_directory
    
    • mkdir directory_name: 创建一个名为 directory_name 的新目录。
  5. rmdir: 删除空目录。

    rmdir empty_directory
    
    • rmdir directory_name: 删除一个名为 directory_name 的空目录。
  6. rm: 删除文件或目录。

    rm file_name
    rm -r directory_name
    
    • rm file_name: 删除一个名为 file_name 的文件。
    • -r: 递归删除目录及其内容。
  7. cp: 复制文件或目录。

    cp source_file destination_file
    cp -r source_directory destination_directory
    
    • cp source destination: 复制文件。
    • -r: 递归复制目录及其内容。
  8. mv: 移动或重命名文件或目录。

    mv old_name new_name
    mv file_name /path/to/destination
    
    • mv old_name new_name: 重命名文件或目录。
    • mv file_name destination: 移动文件到指定目录。

文件查看和编辑
  1. cat: 连接文件并显示其内容。

    cat file_name
    
    • cat file_name: 显示文件内容。
  2. more: 分页显示文件内容。

    more file_name
    
    • more file_name: 分页显示文件内容,可以使用空格键翻页。
  3. less: 分页显示文件内容,支持向前翻页。

    less file_name
    
    • less file_name: 分页显示文件内容,可以使用上下箭头键滚动。
  4. head: 显示文件的前几行。

    head file_name
    head -n 5 file_name
    
    • head file_name: 显示文件的前 10 行。
    • -n: 指定显示的行数。
  5. tail: 显示文件的后几行。

    tail file_name
    tail -n 5 file_name
    tail -f file_name
    
    • tail file_name: 显示文件的后 10 行。
    • -n: 指定显示的行数。
    • -f: 实时跟踪文件的新增内容。

文件权限
  1. chmod: 更改文件或目录的权限。

    chmod 755 file_name
    
    • chmod permissions file_name: 更改文件或目录的权限。755 表示文件所有者可以读写执行,其他用户可以读和执行。
  2. chown: 更改文件或目录的所有者。

    chown user:group file_name
    
    • chown user:group file_name: 更改文件或目录的所有者和组。
  3. chgrp: 更改文件或目录的组。

    chgrp group_name file_name
    
    • chgrp group_name file_name: 更改文件或目录的组。

系统管理
  1. ps: 显示当前运行的进程。

    ps aux
    
    • ps: 显示当前运行的进程。
    • aux: 显示所有进程的详细信息。
  2. top: 实时显示系统资源使用情况和进程信息。

    top
    
    • top: 实时显示系统资源使用情况和进程信息,可以按 q 键退出。
  3. kill: 终止进程。

    kill PID
    kill -9 PID
    
    • kill PID: 终止指定 PID 的进程。
    • -9: 强制终止指定 PID 的进程。
  4. df: 显示文件系统磁盘空间使用情况。

    df -h
    
    • df: 显示文件系统磁盘空间使用情况。
    • -h: 以人类可读的格式显示磁盘空间使用情况。
  5. du: 显示目录或文件的磁盘使用情况。

    du -h
    du -sh directory_name
    
    • du: 显示目录或文件的磁盘使用情况。
    • -h: 以人类可读的格式显示磁盘使用情况。
    • -s: 显示目录的总磁盘使用情况。
  6. free: 显示系统的内存使用情况。

    free
    
    

-h

- **`free`**: 显示系统的内存使用情况。
- **`-h`**: 以人类可读的格式显示内存使用情况。

7. **uname**: 显示系统信息。
```sh
uname -a
  • uname: 显示系统信息。
  • -a: 显示所有系统信息。

网络相关
  1. ping: 测试网络连接。

    ping host
    
    • ping host: 发送 ICMP ECHO_REQUEST 数据包到网络主机,测试网络连接。
  2. ifconfig: 显示或配置网络接口(在较新版本的 Linux 中已被 ip 命令取代)。

    ifconfig
    
    • ifconfig: 显示或配置网络接口。
  3. ip: 显示或配置网络接口。

    ip a
    
    • ip: 显示或配置网络接口。
    • a: 显示所有网络接口的详细信息。
  4. netstat: 显示网络连接、路由表、接口状态等信息。

    netstat -tuln
    
    • netstat: 显示网络连接、路由表、接口状态等信息。
    • -tuln: 显示所有监听的端口。
  5. wget: 从网络下载文件。

    wget URL
    
    • wget URL: 下载指定 URL 的文件。
  6. curl: 传输数据,支持多种协议。

    curl -O URL
    
    • curl -O URL: 下载指定 URL 的文件并保存为本地文件。

文本处理
  1. grep: 搜索文本中的模式。

    grep 'pattern' file_name
    grep -r 'pattern' directory_name
    
    • grep 'pattern' file_name: 在文件中搜索模式。
    • -r: 递归搜索目录中的模式。
  2. awk: 文本处理工具,用于提取和处理文本。

    awk '{print $1}' file_name
    
    • awk '{print $1}' file_name: 打印文件的第一列。
  3. sed: 流编辑器,用于文本的查找和替换。

    sed 's/old/new/g' file_name
    
    • sed 's/old/new/g' file_name: 将文件中的所有 old 替换为 new

打包和压缩
  1. tar: 用于创建和解压缩 tar 包。

    tar -cvf archive.tar directory_name
    tar -xvf archive.tar
    tar -czvf archive.tar.gz directory_name
    tar -xzvf archive.tar.gz
    
    • tar -cvf archive.tar directory_name: 创建一个 tar 包。
    • -xvf: 解压一个 tar 包。
    • -czvf: 创建一个 gzip 压缩的 tar 包。
    • -xzvf: 解压一个 gzip 压缩的 tar 包。
  2. zip: 压缩文件或目录。

    zip archive.zip file_name
    zip -r archive.zip directory_name
    
    • zip archive.zip file_name: 压缩文件。
    • -r: 递归压缩目录。
  3. unzip: 解压 zip 包。

    unzip archive.zip
    
    • unzip archive.zip: 解压 zip 包。
  • 11
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值