Linux常用命令详解

1 Linux文件夹和文件操作常用命令详解

  • ls:显示当前文件夹中的文件。
  • ls -l:显示文件的详细信息。
  • ls -lh:以易读格式显示文件大小及详细信息。
  • ls -a:显示所有文件,包括隐藏文件。
  • cd:切换到指定目录。
  • pwd:显示当前所在路径。
  • mkdir:创建单级目录;mkdir -p 创建多级目录。
  • touch:创建空文件或更新文件时间戳。
  • rm:删除文件;rm -r 删除目录及其内容;rm -rf 强制删除目录及其内容。
  • cp:复制文件。
  • mv:移动或重命名文件/目录。
  • du:查看文件/目录占用的空间;du -sh * 查看当前目录下每个项的大小;du -sh . 查看当前目录总大小。
  • df:显示磁盘空间使用情况;df -Th 以易读格式显示。
  • wc:统计文件的行数、字数和字节数。

2 Linux文件编辑和内容显示常用命令详解

2.1 文件编辑常用命令

  • vim: 用于编辑文件,如 vim 1.txt;安装命令为 yum install vim
  • 进入编辑模式:
    • i 开始插入文本。
    • a 在当前光标后开始插入。
    • o 在当前行下方新开一行插入。
  • 普通模式下操作:
    • gg 移至文件开头。
    • G 跳转至文件末尾。
    • 数字+gg 定位到特定行(例如 2gg 到第2行)。
    • yy 复制当前行。
    • p 在光标后粘贴已复制的行。
    • 2yy 复制两行。
    • dd 删除当前行。
    • u 撤销上一步操作。
    • Ctrl+r 取消撤销。
    • /关键字 查找指定内容,使用 nN 寻找下一个或上一个匹配项。
  • 命令行模式:
    • 从普通模式输入 : 进入。
    • 常用命令包括:
      • :set number 显示行号。
      • :%s/旧词/新词/g 替换所有出现的关键词。
      • :wq 保存并退出。
      • :q! 不保存强制退出。
  • sed -i 's/旧内容/新内容/g' 文件名:替换文件中的内容。

2.2 内容显示常用命令

  • cat 文件名:查看文件内容。
  • cat > 新文件名 <<EOF ... EOF:创建新文件并写入内容。
  • echo "内容" > 文件名:覆盖文件内容。
  • echo "内容" >> 文件名:向文件追加内容。
  • more 文件名:分页查看文件内容;空格翻页,回车逐行显示,q键退出。
  • head [选项] 文件名:显示文件开头部分,默认10行。例如:head -n 5 文件名 显示前5行。
  • tail [选项] 文件名:显示文件末尾部分,默认10行。使用 -f 实时更新显示文件最新内容。例如:tail -n 5 文件名 显示最后5行。tail -f 文件名实时打印文件内容。

3 Linux字符串和文件查找命令详解

  • grep:搜索文件中匹配的字符串
    • grep root /etc/passwd:查找包含"root"的行。
    • grep '^root' /etc/passwd:查找以"root"开头的行。
    • grep 'nologin$' /etc/passwd:查找以"nologin"结尾的行。
    • grep -v nologin /etc/passwd:排除含有"nologin"的行。
    • grep -w bin /etc/passwd:精确匹配整个单词"bin"。
  • find:根据条件搜索文件
    • find / -name "passwd":定位名为"passwd"的文件。
    • find / -name "*.conf":找到所有.conf文件。
    • find /var/log/ -type f:列出/var/log/下的所有文件。
    • find /var/log -mtime +7:发现修改时间超过7天的文件。
    • find /data/aa/ -type f -mtime +7 -name "*.log" -exec rm -f {} \;:删除/data/aa/目录下,修改时间超7天且以.log结尾的文件。
  • which:显示命令所在路径,如which ls给出ls命令的位置。

4 Linux怎么进行用户管理

  • useradd martin:创建用户martin。
  • su - martin:切换至martin用户。
  • exit:退出当前用户,返回root。
  • passwd martin:更改martin的密码。
  • passwd -d martin:移除martin的密码。
  • userdel martin:删除用户martin。
  • userdel -r martin:删除用户martin及其家目录。
  • groupadd dba:新建dba用户组。
  • useradd -g dba liu:创建liu并加入dba组。
  • usermod -g dba martin:将martin移动到dba组。
  • groupdel dba:先确保dba组内无用户,再删除该组。

5 Linux怎么正确设置权限和属性

5.1 Linux权限详解

  • 权限类型
    • r:读取(Read),数值为4。
    • w:写入(Write),数值为2。
    • x:执行(Execute),数值为1。
    • 组合示例:rwx=7, rw=6。
  • 权限分配
    • 文件或目录的权限分为三部分显示:所有者、所属组、其他用户。
    • 使用 ls -l (或 ll) 查看文件详细信息。
    • 示例格式 -rw-r--r-- 中,第一位表示文件类型 (- 文件, d 目录);接下来每三位分别对应上述三个类别的权限。
  • 数字表示法示例
    • -rw-r--r-- = 所有者6(读+写),组4(仅读),其他人4(仅读)。
    • drwx------ = 所有者7(全权),组0(无权),其他人0(无权)。
    • drwxr-xr-x = 所有者7(全权),组5(读+执行),其他人5(读+执行)。

5.2 修改权限和属性的相关命令

  • chmod:更改文件权限
    • chmod 755 1.txt:设置1.txt的所有者可读写执行,用户组和其他用户仅可读执行。
    • chmod 777 1.txt:给予1.txt所有用户全部权限(读、写、执行)。
  • chown:更改文件的所有者和所属组
    • chown aaa.aaa 1.txt:将1.txt的所有者和组都改为aaa。
    • chown -R aaa.aaa linux/:递归地将linux目录及其下所有内容的所有者和组更改为aaa。

6 Linux压缩和解压命令详解

  • tar
    • tar -zcvf 1.tar.gz 1.txt:压缩1.txt到1.tar.gz。z表示使用gzip压缩,c创建归档文件,v显示过程,f指定输出文件名。
    • tar -zxvf 1.tar.gz:解压1.tar.gz。x用于解压文件。
  • gzip
    • gzip aaa.txt:压缩aaa.txt。
    • gzip -d aaa.txt.gz:解压aaa.txt.gz。
  • zip
    • 安装命令:yum install zip -y
    • 压缩:zip aaa.txt.zip aaa.txt
    • 加密压缩:zip -e aaa.txt.zip aaa.txt
    • 安装解压命令:yum install unzip -y
    • 解压:unzip 111.txt.zip

7 Linux服务管理、性能收集相关命令详解

  • ps:显示当前进程状态。
    • ps -ef:查看所有进程及其关系。选项 -e 显示所有进程,-f 显示程序间的关系。
      • 主要字段包括:
        • UID:进程所有者
        • PID:进程ID
        • PPID:父进程ID
        • C:CPU使用百分比
        • STIME:启动时间
        • TTY:终端名
        • TIME:累计使用的CPU时间
        • CMD:启动命令
    • ps -ef | grep nginx:查找是否已启动名为nginx的进程。
  • top:查看系统资源使用情况。
    • '16:29:53':当前时间。
    • 'up 33 days':系统运行时长。
    • '1 user':当前登录用户数。
    • 'load average: 0.00, 0.02, 0.05':过去1、5、15分钟内的平均负载。
    • 'Tasks'行显示总进程数及各状态下的进程数(运行/睡眠/停止/僵尸)。
    • '%Cpu(s)'行展示CPU使用率,包括用户、系统和空闲百分比。
    • 'MiB Mem'行给出内存使用详情,涵盖总量、空闲、已用及缓存大小。
    • 'MiB Swap'行提供虚拟内存信息,包括总量、空闲、已用及可用大小。
    • 表格列出了每个进程的详细信息,如PID、用户、优先级、内存使用等。
    • q键退出。
  • kill:用于杀死进程
    • kill [进程号]:终止指定进程
    • kill -9 [进程号]:强制终止指定进程
  • netstat:显示网络连接、路由表等信息
    • 安装命令:yum install net-tools
    • 查看sshd监听端口:netstat -anp | grep sshd (选项说明:-a显示所有,-n以数字形式显示地址和端口号,-p显示使用端口的程序名)
    • 查看特定端口(如22)的信息:netstat -anp | grep 22
    • 统计特定端口(如22)的连接数:netstat -anp | grep 22 | wc -l
  • lsof:列出打开的文件
    • 安装命令:yum install lsof -y
    • 查看某端口打开的文件:lsof -i:22
    • 查看指定进程号(PID)的文件:lsof -p [PID]
    • 输出格式示例:COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME,其中COMMAND 进程名称;PID 进程号;USER 进程所有者;FD 文件描述符;TYPE 文件类型;DEVICE 指定磁盘名称;SIZE/OFF 文件大小和偏移量;NODE 文件节点;NAME 文件挂载点和文件所在系统
  • chkconfig:用于检查和设置系统服务。
    • chkconfig --list:显示所有服务的状态。数字0到6代表不同的运行级别,0表示关机状态,1表示单用户模式,2表示无网络链接的多用户命令行模式,3表示有网络连接的多用户命令行模式,4保留未使用,5表示带图形界面的多用户模式,6表示重新启动。
    • chkconfig --list network:查看network服务的状态。
    • chkconfig --add mysql:添加mysql服务。
    • chkconfig --del mysql:删除mysql服务。
    • chkconfig mysqld on:将mysqld服务设为在多个运行级别下自动启动。
  • iostat:用于统计系统IO状态。
    • 安装命令:yum install sysstat -y
    • 查看CPU使用情况:iostat -c
      • 显示字段解释:
        • %user: 用户模式下的CPU时间百分比
        • %nice: nice优先级调整后的CPU时间百分比
        • %system: 系统模式下的CPU时间百分比
        • %iowait: CPU等待I/O完成的时间百分比
        • %steal: 虚拟环境中,被其他虚拟机占用的CPU时间百分比
        • %idle: CPU空闲时间百分比
    • 查看磁盘使用情况:iostat -d
      • 显示字段解释:
        • Device: 磁盘设备名
        • tps: 每秒传输次数
        • kB_read/s: 每秒读取的数据量(KB)
        • kB_wrtn/s: 每秒写入的数据量(KB)
        • kB_read: 总读取数据量(KB)
        • kB_wrtn: 总写入数据量(KB)
    • 实时监控IO状态:iostat -d -k 1
      • -k 表示以KB为单位显示每秒的磁盘请求量,1 表示每隔一秒刷新一次。
  • iotop:用于查看磁盘 I/O 状态。
    • 安装命令:yum install iotop -y
    • 显示信息说明:
      • Total DISK READ/ WRITE: 0.00 B/s:分别表示磁盘读取和写入的总速率。
      • Current DISK READ/ WRITE: 0.00 B/s:分别表示当前磁盘读取和写入的速率。
      • 列表头解释:
        • TID:线程ID
        • PRIO:优先级
        • USER:线程所有者
        • DISK READ/WRITE:磁盘读/写速率
        • SWAPIN:交换百分比
        • IO>:I/O等待时间百分比
        • COMMAND:进程命令
    • q退出程序。
    • 查看特定进程的 I/O 状态:iotop -p [进程号]
  • uptime:显示系统运行时间和负载情况。
    • 示例:‘17:32:12 up 33 days, 3:25, 1 user, load average: 0.06, 0.15, 0.09’
      • 17:32:12:当前时间
      • up 33 days, 3:25:系统已运行33天3小时25分钟
      • 1 user:当前有1个用户登录
      • load average: 0.06, 0.15, 0.09:分别代表过去1分钟、5分钟和15分钟的平均负载

8 Linux计划任务怎么配置

  • 计划任务格式
    • 查看格式:cat /etc/crontab
    • 格式说明:* * * * * 用户名 命令(分别代表分钟、小时、日、月、星期)
  • 创建/编辑计划任务:使用 crontab -e
  • 示例
    • 每小时执行 ls >> ls.log0 * * * * ls >> ls.log
    • 每天凌晨1点运行备份脚本:0 1 * * * sh /data/script/backup.sh
    • 每周一、三、五早上8点检查备份:0 8 * * 1,3,5 sh /data/script/check_backup.sh
  • 查看现有任务crontab -l
  • 清空所有任务:在 crontab -e 中,输入 dG 清空文件。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值