linux基本命令2

发布于:2024-11-29 ⋅ 阅读:(22) ⋅ 点赞:(0)

7. 文件查找和搜索 (继续)

  • find — 查找文件

    find /path/to/search -name "file_name" # 根据名称查找文件 
    find /path/to/search -type f # 查找所有普通文件 
    find /path/to/search -type d # 查找所有目录 
    find /path/to/search -name "*.txt" # 查找所有扩展名为 .txt 的文件 
    find /path/to/search -size +100M # 查找大于100MB的文件 
    find /path/to/search -mtime -7 # 查找最近7天内修改过的文件 
    find /path/to/search -exec command {} \; # 对找到的每个文件执行命令
  • locate — 快速查找文件

    locate file_name # 查找文件,速度比find快,但需要数据库更新 
    updatedb # 更新locate数据库
  • which — 查找可执行文件的路径

    which command_name # 查找命令的完整路径
  • grep — 在文件中查找匹配的文本

    grep "pattern" file_name # 查找文件中匹配“pattern”的行 
    grep -i "pattern" file_name # 忽略大小写进行搜索 
    grep -r "pattern" dir_name # 在目录中递归查找 
    grep -v "pattern" file_name # 显示不包含“pattern”的行 
    grep -n "pattern" file_name # 显示匹配行及其行号
  • find + grep — 联合查找文件并搜索内容

    find /path/to/search -type f -exec grep "pattern" {} \; # 查找文件并搜索内容

8. 压缩与解压

  • tar — 打包与解包文件

    tar -cvf archive.tar dir_name # 打包目录(不压缩) 
    tar -xvf archive.tar # 解包.tar文件 
    tar -czvf archive.tar.gz dir_name # 打包并压缩为.gz格式 
    tar -xzvf archive.tar.gz # 解压.tar.gz文件 
    tar -cjvf archive.tar.bz2 dir_name # 打包并压缩为.bz2格式 
    tar -xjvf archive.tar.bz2 # 解压.tar.bz2文件
  • zip — 压缩文件为zip格式

    zip archive.zip file1 file2 # 将多个文件压缩为zip文件 
    zip -r archive.zip dir_name # 将目录压缩为zip文件
  • unzip — 解压zip文件

    unzip archive.zip # 解压zip文件 
    unzip archive.zip -d /path/to/dir # 将文件解压到指定目录
  • gzip — 压缩文件为.gz格式

    gzip file_name # 压缩文件为.gz格式 
    gzip -d file_name.gz # 解压.gz文件
  • bzip2 — 压缩文件为.bz2格式

    bzip2 file_name # 压缩文件为.bz2格式 
    bzip2 -d file_name.bz2 # 解压.bz2文件

9. 磁盘管理

  • fdisk — 管理磁盘分区

    fdisk -l # 列出所有磁盘和分区 fdisk /dev/sda # 对磁盘/dev/sda进行分区操作
  • parted — 分区管理工具(用于GPT分区表等)

    parted /dev/sda # 对磁盘/dev/sda进行分区操作
  • mount — 挂载文件系统

    mount /dev/sda1 /mnt # 将/dev/sda1分区挂载到/mnt目录 
    mount -t ext4 /dev/sda1 /mnt # 挂载指定类型的文件系统
  • umount — 卸载文件系统

    umount /mnt # 卸载/mnt目录下的文件系统
  • lsblk — 列出所有块设备

    lsblk # 列出所有块设备及其挂载点
  • df — 查看磁盘使用情况

    df # 查看所有文件系统的磁盘使用情况 
    df -h # 以易读格式显示(KB、MB、GB) 
    df -T # 显示文件系统类型
  • du — 显示文件或目录的磁盘使用情况

    du -sh /path/to/dir # 显示指定目录的总磁盘使用量 
    du -ah /path/to/dir # 显示指定目录及其中每个文件的磁盘使用量

10. 系统监控与性能调优

  • top — 实时显示系统的进程和资源使用情况

    top # 显示当前系统进程及资源使用情况 
    top -u username # 显示指定用户的进程 
    top -d 2 # 设置刷新时间间隔为2秒
  • htop — 类似top,但有更友好的界面和更多功能(需要单独安装)

    htop # 显示更友好的进程监控
  • vmstat — 显示系统内存、交换区、I/O等信息

    vmstat 1 # 每1秒更新一次内存、CPU、I/O等统计信息
  • iostat — 显示系统的I/O性能

    iostat # 显示CPU和磁盘I/O性能统计
  • sar — 系统活动报告工具(需要安装sysstat包)

    sar 1 3 # 每1秒钟显示一次系统活动信息,总共显示3次
  • free — 查看内存使用情况

    free -h # 以易读的方式显示内存使用情况(MB、GB)
  • uptime — 查看系统运行时间

    uptime # 查看系统的运行时间、负载等信息

11. 用户与权限管理

  • useradd — 添加新用户

    useradd username # 创建一个新用户
    useradd -m username # 创建用户并创建家目录
  • passwd — 设置或更改用户密码

    passwd username # 修改指定用户的密码
  • usermod — 修改用户账户

    usermod -aG group username # 将用户添加到指定组
  • groupadd — 创建新组

    groupadd group_name # 创建新组
  • id — 显示用户和组的ID信息

    id # 显示当前用户的UID、GID和所属组
  • whoami — 显示当前用户名

    whoami # 显示当前用户名
  • groups — 显示用户所属的所有组

    groups username # 显示指定用户所属的组
  • chmod — 修改文件权限

    chmod u+x file_name # 给文件的所有者添加可执行权限
    chmod g-w file_name # 移除文件所属组的写权限 
    chmod o+r file_name # 给其他用户添加读取权限 
    chmod 755 file_name # 设置文件权限为rwxr-xr-x
  • chown — 修改文件所有者

    chown user:group file_name # 修改文件的所有者和所属组 
    chown user file_name # 只修改文件的所有者