常用的Linux命令与它们的功能
阅读原文时间:2023年07月08日阅读:1

概要

filename 文件名

dir 文件夹名

string 字符串

username 用户名

groupname 组名

regex 正则表达式

path 路径

partition 分区名

port 端口号

IP IP地址

domain 域名

PID 进程ID

host 主机名

文件命令

  • du -sh dir

    显示文件夹大小,-h人类可读的单位,-s只显示摘要

  • find . -name filename

    从当前路径开始,向下寻找文件filename

  • locate string

    寻找包含有string的路径(不是实时查找,需要更新数据库updatedb获得最新信息)

  • ln -s filename path

    为文件filename在path位置创建软链接

  • pwd

    显示当前路径

  • cd path

    更改当前的路径为path

  • cd -

    更改当前路径为之前的路径

  • touch filename

    如果文件不存在,创建一个空白文件;文件存在则更新文件读取和修改时间

  • rm filename

    删除文件

    rm -rf dir

    删除文件夹的所有文件以及该文件夹,且无需确认

  • cp file1 file2

    复制file1为file2

  • ls -l path

    显示文件和文件相关信息

    ls -a

    显示隐藏文件

  • mkdir dir

    创建dir文件夹

    mkdir -p path

    递归创建路径path上所有文件夹

    rmdir dir

    删除文件夹(文件夹必须为空)

    rm -r dir

    删除dir文件夹,以及其包含所有文件

  • file filename

    文件filename类型描述

  • chown username:groupname filename

    更改文件的拥有者用户为owner,拥有组为group

  • chmod 755 filename

    更改文件权限为755: owner:r+w+x, group:r+x, others:r+x

  • od -c filename

    以ASCII字符显示文件

  • cat filename

    显示文件

    cat file1 file2

    连接显示file1和file2

  • head -1 filename

    显示文件第一行

  • tail -5 filename

    显示文件倒数第五行

  • diff file1 file2

    显示file1与file2的差别

  • sort filename

    对文件中的行排序并显示

    sort -f filename

    不区分大小写

    sort -u filename

    去掉重复行

  • uniq filename

    显示文件filename不重复的行(内容相同但不相邻的行,不算重复)

  • wc filename

    统计文件中字符,词与行的数目

    wc -l filename

    统计文件行数

文本

  • echo string

    显示string

  • echo string | cut -c5-7

    截取文本第5到7列

  • echo string | grep regex

    显示包含正则表达式regex的行

  • echo string | grep -o regex

    显示符合正则表达式regex的子字符串

时间日期

  • date

    当前日期时间

  • sleep 300

    休眠300s

进程

  • top

    显示进程信息,并实时更新

  • ps

    显示当前shell下的进程

    ps -lu username

    显示用户username的进程

    ps -ajx

    以比较完整的格式显示所有进程

    ps -aux | grep PID

    查看某PID进程状态

    ps -aux | grep apache

    查找某名为apache的进程

  • kill PID

    向进程号为PID的进程发送信号[默认发送SIGKILL信号(进程号为9)终止进程]

  • lsof -u username

    用户username的进程所打开的文件

    • lsof -i :port

      查看占用某个端口的进程

  • ipcs

    查看当前系统拥有哪些共享资源实例(共享内存,信号量和消息队列)

  • ipcrm id

    删除遗留在系统中的共享资源

  • dmesg

    显示系统日志

  • time a.out

    测试a.out运行时间

硬件

  • uname -a

    显示系统信息

  • df -lh

    显示所有硬盘使用情况

  • arch

    显示架构

  • cat /proc/cpuinfo

    显示CPU信息

  • cat /proc/meminfo

    显示内存信息

  • free

    显示内存使用状况

  • pagesize

    显示内存page大小

网络

  • ifconfig

    显示网络接口以及相应的IP地址

    ifup eth0

    运行eth0接口

    ifdown eth0

    关闭eth0接口

  • iwconfig

    显示无线网络接口

  • route

    显示路由表。还可用于修改路由表

  • netstat

    显示当前网络连接状态

  • ping IP

    发送ping包到地址IP

  • traceroute IP

    探测前往地址IP的路由路径

  • dhclient

    向DHCP主机发送DHCP请求,以获得IP地址以及其它设置信息

  • host domain

    DNS查询,寻找域名domain对应的IP

    host IP

    反向DNS查询

  • wget url

    使用wget下载url指向的资源

压缩与归档

  • zip file.zip file1 file2

    将file1和file2压缩到file.zip

  • unzip file.zip

    解压缩file.zip

  • gzip -c filename > file.gz

    将filename文件压缩到file.gz

  • gunzip file.gz

    解压缩file.gz文件

  • tar

    五个命令必选一个:

    -c: 建立压缩档案
    -x: 解压
    -t: 查看内容
    -r: 向压缩归档文件末尾追加文件
    -u: 更新原压缩包中的文件

可选参数:

    -z: 有gzip属性的
    -j: 有bz2属性的
    -Z: 有compress属性的
    -v: 显示所有过程
    -o: 将文件解开到标准输出