美文网首页
linux常用命令

linux常用命令

作者: 忆江南_1569 | 来源:发表于2017-04-19 19:06 被阅读47次

    1.ls

    ls命令用来查看当前目录下包含的文件和文件夹
    ls -a列出目录所有文件,包含以.开头的隐藏文件
    ls -A列出除了.和..的所有文件
    ls -r反序排列
    ls -t以文件的修改时间排列
    ls -S以文件大小排序
    ls -h以易读大小显示
    ls -l除了文件名之外还将文件大小、所有者、权限等显示出来
    实例:
    按修改时间反序排列以易读方式文件大小,显示详细信息
    ls -lrht

    2.cd

    cd命令用来切换当前目录
    cd /进入根目录
    cd ~进入用户主目录
    cd -进入上一次的工作目录
    cd !$把上个命令的参数作为cd参数使用

    3.pwd

    pwd命令用来查看当前的工作路径
    pwd -p查看软链接的实际路径

    4.mkdir

    mkdir命令用来创建文件夹
    -m参数对新建目录设置存取权限
    -p可以是一个路径的名称,若这个路径不存在则自动创建该路径
    实例:
    mkdir t创建一个t文件夹
    mkdir -p t/p在当前目录下创建t/p目录,若不存在t文件夹则创建

    5.rm

    rm用来删除一个或多个文件或者目录
    -r参数用来删除目录
    实例:
    删除后缀为.log的文件,删除前逐一确认
    rm *.log
    删除test目录及test目录下的所有文件并且不用一一确认
    rm -rf test

    6.rmdir

    rmdir用来从一个目录中删除一个或多个子目录项,删除某目录时也必须对父目录具有写权限
    rmdir不能删除非空目录
    实例:
    rmdir test/test1删除test1空目录
    rmdir -p test/test1删除test1目录之后test目录为空的话也一并删除

    7.mv

    mv命令用来移动或重命名文件,根据第二个参数(如果为目录则移动文件,为文件名则重命名文件)
    当第二个参数为目录时,可以将多个文件以空格分割作为第一个参数,移动多个文件至参数2目录中
    实例:
    将文件a.txt重命名为ab.txt
    mv a.txt ab.txt
    将文件a.txt,ab.txt移动到当前目录下的test文件夹下
    mv a.txt ab.txt ./test
    将文件file1.txt重命名为file2.txt,如果file2.txt已经存在则询问是否覆盖
    mv -i file1txt flie2.txt
    将当前目录下的所有文件和文件夹移动到上一级目录中
    mv * ../

    8.cp

    cp命令用于将一个或多个源文件复制至目标目录下
    -i如果复制的目标文件已经存在-i会给出是否覆盖的提示
    -a复制的文件与源文件的属性一致
    实例:
    复制a.txt 文件至当/test文件夹下,保持复制文件与源文件属性一致,若目标文件已经存在则提示是否覆盖源文件
    cp -ai a.txt /test
    复制当前目录下的所有文件和文件夹至/test目录下
    cp -r * /test

    9.cat

    cat命令主要有3大功能
    1.一次显示整个文件:cat a.txt
    2.创建一个文件:cat > file1.txt<<EOF(<<后面的EOF表示结束标志,EOF可以换成任意字符)
    3.将几个文件合并成一个文件: cat a.txt b.txt > file
    -b对非空输出行号
    -n输出所有行号
    实例:
    将a.txt的内容加上行号之后输入到b.txt这个文件里
    cat -n a.txt > b.txt
    将a.txt和b.txt的内容合并之后输入到d.txt这个文件中
    cat a.txt b.txt > d.txt
    使用cat生成新的文件


    反向显示b.txt文件
    tac b.txt

    10.more

    more类似cat命令用来一屏一屏显示文件方便分页阅读,空格键显示下一屏,b键显示上一屏,q键退出,enter向下滚动一行
    命令参数:
    +n从第n行开始显示
    -n 定义屏幕一次显示n行

    11.head

    head命令用来显示文档开头至标准输出中,默认显示文件前10行
    -n 显示的行数
    -c 显示字节数
    实例:
    显示a.txt的前10行数据
    head -n 10 a.txt
    显示a.txt的前20个字节
    head -c 20 a.txt
    显示a.txt除了最后5行的所有内容
    head -n -5 a.txt

    12.tail

    tail命令用来显示文件的末尾内容
    -f循环读取
    -n显示行数
    实例:
    显示a.txt的最后10行内容
    tail -n 10 a.txt
    循环显示a.log的后20行内容
    tail -f 20 a.log

    13.which

    在linux下要查找某个文件但不知道放哪了,可以使用下面一些命令来搜索
    which 查看可执行文件的位置,which是在环境变量PATH中搜索某个系统命令的位置,并返回第一个搜索结果(查看当前的PATH配置echo $PATH或者使用env查看所有环境变量及对应值)
    实例:
    查看python命令是否存在执行哪个
    which python
    查看ls命令是否存在执行哪个
    which ls

    14.find

    find命令用来查找文件
    实例:
    查找48小时内修改过的文件(从/目录下查找)
    find -atime -2
    查找当前目录下以.log为后缀的文件
    find ./ -name *.log
    查找大于1k的文件
    find -size +1000c

    15.tar

    tar命令用来压缩和解压文件,tar命令本身不具有压缩功能,只有打包功能,调用其他功能来压缩
    打包和压缩:打包是指将一大推文件或目录变成一个总的文件;压缩是通过压缩算法将一个大文件变成一个小文件
    实例:
    将a.txt,b.txt打成一个tar包
    tar -cvf a.tar a.txt b.txt
    将etc目录下的所有文件和目录打包到指定目录,并用gz压缩
    tar -zcvf /test/etc.tar.gz etc/
    将a.tar包解压
    tar -xvf a.tar
    将etc.tar.gz解压缩
    tar -zcvf etc.tar.gz
    查看etc.tar.gz中的文件内容
    tar -ztvf etc.tar.gz

    16.chmod

    chmod命令用来改变文件或目录的所属权限

    Paste_Image.png

    以空格分割
    前10个字符中的第一位为-表示该为一个文件d表示为一个目录,后面9位每3位为一组分别代表属主、属组、其他用户的权限,rwx分别代表读写执行权限
    权限范围
    u:目录或文件的当前用户
    g:目录或文件的当前群组
    o:除了目录的当前用户和当前群组以外的用户和群组
    a:所有用户
    权限代号:
    r:数字4表示
    w:数字2表示
    x:数字1表示
    -:删除权限数字0表示
    实例:
    增加a.log的所有用户的执行权限
    chmod a+x a.log
    给file属主分配读写执行权限,file所在组分配读写权限,其他用户分配读权限
    chmod 764 file(chmod u=rwx,g=wr,o=w file)

    17.df

    df查看磁盘的使用情况
    -l只显示本地磁盘
    -h以方便阅读的方式显示
    实例:
    df -lh 以方便阅读的方式显示本地磁盘的使用情况

    18.du

    du查看文件和目录的磁盘空间使用情况
    -a显示目录中所有文件大小
    -k以kb为单位显示文件大小
    -m以Mb为单位显示文件大小
    -g以Gb为单位显示文件大小
    -h以易读的方式显示文件大小
    实例:
    以易读的方式查看test目录下的文件大小
    du -h /test

    19.ln

    ln命令用来为文件或目录在另一个位置创建一个同步的链接
    -s软链接
    -v显示详细信息
    -b删除覆盖以前建立的链接
    实例:
    为a.txt建立一个软链接显示详细信息
    ln -sv a.txt b.txt
    为一个目录创建一个软链接
    ln -sv /home/test1/test /home/tp(此时进入tp文件夹就相当于进入到test文件夹,相当于一个快捷方式)

    20.grep

    grep文本搜索命令
    实例:
    显示以.txt结尾的文件中包含test的行
    grep 'test' *.txt
    显示a.txt文件中以test开头的行
    grep '^test' a.txt

    21.ps

    -aux 显示所有包含其它使用的进程
    ps用来查看当前进程的运行状态
    实例:
    显示当前所有进程环境变量及进程间的关系
    ps -ef
    显示当前所有进程
    ps -A
    与grep联用查找某进程
    ps -aux|grep apache

    22.top

    top命令用来查看当前系统正在执行的进程的相关信息,包括内存占用率、cpu使用率等

    Paste_Image.png
    第一行:
    17:17:24表示当前系统时间
    up 7:41表示系统已连续运行7小时41分
    2 users当前有2个用户登录系统
    load average: 0.13, 0.12, 0.11分别表示系统1min、5min、15min的负载情况
    第二行:
    Tasks: 225 total, 2 running, 223 sleeping, 0 stopped, 0 zombie
    表示当前有225个进程,2个正着运行,223个在休眠,stopped状态有0个,zombie(僵尸)状态0个
    第三行:
    %Cpu(s): 16.4 us, 4.2 sy, 0.0 ni, 77.6 id, 0.0 wa, 0.0 hi, 1.7 si, 0.0 st
    cpu资源信息
    16.4 us用户空间占用cpu百分比
    4.2 sy内核空间占用cpu百分比
    0.0 ni改变过优先级的进程占用cpu的百分比
    77.6 id空闲cpu百分比
    0.0 wa IO等待占用cpu百分比
    0.0 hi 硬中断(Hardware IRQ)占用CPU的百分比
    1.7 si 软中断(Software Interrupts)占用CPU的百分比
    第四行:
    KiB Mem: 1000052 total, 905424 used, 94628 free, 36432 buffers
    内存使用信息(单位kb)
    1000052 total 物理内存总量
    905424 used 使用中的内存总量
    94628 free 空闲中的内存总量
    36432 buffers 缓存的内存量
    第五行:
    KiB Swap: 1046524 total, 332344 used, 714180 free. 200780 cached Mem
    swap交换分区信息
    1046524 total 交换区总量
    332344 used 使用的交换区总量
    714180 free 空闲中的交换区总量
    200780 cached Mem 缓冲的交换区总量
    第7行:
    PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
    PID 进程号
    USER 进程所有者
    PR 进程优先级
    NI nice值,负值表示高优先级,正值表示低优先级
    VIRT 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
    SHR — 共享内存大小,单位kb
    S — 进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程
    %CPU — 上次更新到现在的CPU时间占用百分比
    %MEM — 进程使用的物理内存百分比
    TIME+ — 进程使用的CPU时间总计,单位1/100秒
    COMMAND — 进程名称(命令名/命令行)

    23.kill

    kill命令用来发送指定的信号给系统,常用来终止指定的进程
    常用的有个个信号SIGTERM(15)和SIGKILL(9)
    SIGTERM(15):请求一个进程停止运行,它不是强制停止。它可以用一段时间来正常关闭,一般一个进程的关闭需要一段时间来保存进度并释放资源
    SIGKILL(9):强制进程立刻停止运行,未保存的进度将会丢失
    实例:
    停止pid为110213的进程
    kill 110213
    强制停止pid为110213的进程
    kill -9 110213
    kilall可以使用进程名替代pid,它会kil掉所有同名的进程
    kill 掉Firefox进程
    killall Firefox

    24.free

    显示系统内存的使用情况,包括物理内存、交互区内存和内核缓冲区内存
    -b已byte显示内存使用
    -k以kb显示内存使用
    -m以Mb显示内存使用
    -g以gb为单位显示内存使用
    -s<间隔秒数>以间隔秒数持续显示内存使用情况
    -t 显示内存使用总和
    实例:
    显示内存使用情况(mb)
    free -m
    每10s查询一次内存使用情况
    free -s

    25.nslookup

    nslookup用来查找域名对应的ip
    nslookup baidu.com

    Paste_Image.png

    26.telnet

    telnet命令可以查看一个域名是否可用
    telnet pcshop.huimin100.cn 80如果没有报错则该域名可用

    27.查看ubuntu版本号

    uname -a查看linux内核版本
    lsb_release -a 查看ubuntu版本

    Paste_Image.png

    28.linux查看某个文件夹的大小

    du -h --max-depth=1

    29.linux下常用mysql语句

    如果不知道mysql安装目录在哪可以which mysql查看
    进入到mysql安装目录下执行mysql -u root -p
    查看mysql 下数据库
    show databases;
    选择数据库
    use database_name;
    查看表结构
    desc table_name;
    增加一个字段name
    alter table table_name add name varchar(20);
    删除表中全部数据
    truncate table table_name;(速度快,不写日志,不可恢复)
    delete from table_name;(速度慢,写日志,可恢复)
    删除表中的某一条数据
    delete from table_name where id=20;

    参考博客http://www.cnblogs.com/gaojun/p/3359355.html

    相关文章

      网友评论

          本文标题:linux常用命令

          本文链接:https://www.haomeiwen.com/subject/cnsczttx.html