zoukankan      html  css  js  c++  java
  • linux常用命令详解

    说明:此表收录linux命令,附有英文全称方便理解,红色为常用命令!!!

     Linux命令 英文全称  详解
    awk

    "Aho Weiberger and Kernighan"

    三个作者的姓的第一个字母

    https://www.runoob.com/linux/linux-comm-awk.html

    alias  

    给命令起别名

    bash

    GNU Bourne-Again Shell

    大多Linux的默认shell

    bc

    Basic Calculator

    基础计算器,scale设定小数位,quit退出

    bg

    BackGround

    后台运行任务

    bye

    bye

    用于在FTP时退出FTP执行

    cal

    calendar

    日历,后跟月份数、年份数可显示指定月日历

    cat

    catenate

    连续,输出文件内容,-n显示行号,-b不显示空行,有意思的是tac则从后向前输出

    cd

    Change Directory

    切换目录

    如:

    cd temp      进入temp文件中

    cd /home    进入根目录home

    cd ..           进入上一层目录

    chgrp

    Change group

    改变文件归属用户组

    chmod

    Change mode

    改变读写权限,-R递归更改,a默认所有用户u本用户g本群组o其他用户,+-rwx增减读写执行权限,rwx421

    chown

    Change owner

    改变所有者

    cp

    copy

    复制

    clear

    clear

    清屏

    crontab

    = Chronos,希腊文时间,定时执行工具,* * * * *分别为分时日月星期,*代表所有,"-"为范围","为多值"/"为频率,-u指定用户,-l查看任务,-r删除任务,-e编辑任务。

    cut

    cut

    从文件中的每行文本中剪出指定字符,功能类似grep,-b以字节为单位,-c以字符为单位,-d自定义分隔符默认制表符

    date

    date

    日期时间,date "+option",-d显示指定时间,-r显示文件最后修改时间,-s修改时间,%x日期,%X时间,%F日期,%D月日年,%Y4位年份,%y2位年份,%m月份,%d日,%H24制时,%I12制时,%M分,%S秒

    dd

    Disk Dump

    磁盘转储,用于读取、转换并输出数据

    declare

    declare

    用于声明shell变量,-a数组,-i指定整数型

    df

    Disk Free

    剩余磁盘空间,-h以适阅读单位显示,后跟文件则显示其所在挂载点磁盘剩余空间

    dirs

    directories

    从目录栈中读取,功能类似于一个数组,先显示本目录再显示目录栈,-c删除目录栈中所有记录,-p每行显示一个(默认连续显示),-v每行显示一个并加编号,+N显示第N个目录(数字从0开始),-N显示倒数第N个目录

    du

    Disk Usage

    磁盘使用情况,统计文件大小,-h以适阅读单位显示,-s不迭代仅合计统计,--max-depth n指定统计深度

    dos2unix  

    将Windows格式文件转换为Unix、Linux格式的实用命令。Windows格式文件的换行符为 ,而Unix&Linux文件的换行符为 .

    dos2unix命令其实就是将文件中的 转换为 。

    egrep

    Extended GREP

    可使用扩展正则的grep

    exec

    execute

    执行 ,内部命令

    find

    find

    查找,find PATH -OPTION [-print] [-exec cmd] {} ;,PATH为查找数据若为当前目录下则为“.”,-name文件名,-mtime +/- N N天前或内更改的文件,-ctime +/-N N天前或内创建的文件,-type文件类型d为目录f为文件,-size 大于指定字节的文件,

    fg

    ForeGround

    前台运行任务

    fmt

    format

    简单的文本格式化

    ftp

    File Transfer Protocol

    文件传输,后跟IP地址,get从远程FTP机下载到本机,mget批量下载,put将本机文件上传到远程FTP机,mput批量上传

    常见用法:

    ftpget -u  username -p passwd IP  local_file  remote_file

    ftpput -u  username -p passwd IP  remote_file local_file  

    free

    free

    内存使用情况,-s间隔N秒查询一次,-m -k -b以M、KB、Byte为单位显示

    gawk

    GNU AWK

     
    grep

    global regular expression print

    全局正则表达式打印,强大的文本搜索工具,-c只输出计数,-i忽略大小写,-n输出行号,-v取反,-h多文件时不显文件名,-r递归搜索

    head

    head

    查看前n行

    iostat

    in out status

    IO及CPU状态

    ifconfig

    network interfaces configuring

    配置网卡的ip地址语法例:

    ifconfig eth0 192.168.0.1 netmask 255.255.255.0;

    参照:https://baike.baidu.com/item/ifconfig/5073112?fr=aladdin

    less less 分页展示文件内容
    logname loginname

    显示当前登录用户名

    ln link

    建立链接,-s建立软链接(默认硬链接)

    locate locate

    查找文件地址,并不查硬盘,而是在/var/lib/slocate/slocate.db中查看,速度快省资源

    ls list

    罗列出当前目录下所有文件及文件夹 

    -l详细信息,-h合适单位显示,-S大小排序,-t时间排序

    ll   实际上是ls -l的一个别名 ,意思为:罗列出当前文件或目录的详细信息,含有时间、读写权限、大小、时间等信息
    lsof  List Open Files 列出当前系统打开的文件,ROOT权限,-c某进程打开的文件,-p某进程打开的文件,-u某用户打开的文件,跟目录为目录下打开的文件,跟文件为文件相关打开信息,-i某端口或IP打开的文件
    man Manual  Manual意思是手册,可以用这个命令查询其他命令的用法。
    mkdir  Makedirectory 创建目录,-p指定路径,-m指定权限
    mv  Move 移动文件,同目录下则为重命名,-i询问试覆盖,-f同名强制覆盖,-b备份旧文件(文件名后加~),-u若本文件较新则覆盖旧文件
    more more 分页显示
    nl Number of Lines 计算文件行号,类似cat,-b a 计算空行(默认不计算),-n rz以6位数字显示行号前补0,-w指定占位数(默认6)
    passwd PassWord  可以用来修改用户密码等
    pg pager 分页显示文件内容
    ping Packet InterNet Grouper 测试网络,-c指定次数,-i指定间隔秒数
    printf Print Format  
    ps Processes Status

    进程状态 ,命令执行时刻进程信息,-a同终端进程,-A所有进程,-u指定用户,-e同-A,-f展示所有信息,aux查看进程详细信息类似-ef,-C可跟搜索词,--sort=-pcpu,+pmem按cpu降序按mem内存升序排序

    常见用法:

    #查看进程名中包含"hlt"名字的进程

    ps sua | grep hlt

    pushd push Directory 当目录放入目录栈,+/-N将正数/倒数第N个目录移到栈顶并切换到该目录,-n在切目录栈时不切目录
    popd pop Directory 从目录栈弹出目录,+/-N将正数/倒数第N个目录从目录栈中移除
    pwd print working Directory 打印工作目录
    rcp remote copy 远程拷贝,-r递归,-p保留修改时间和权限,将远程文件拷贝到本机,限制条件较多
    reboot   =Restart your computer,重启
    rm ReMove

    删除文件,-r递归,-f不询问强制删除等

    例如

    删除当前目录下所有的.c文件:

    rm -rf *.c

    删除当前目录下所有的非.c文件:

    rm -rf !(*.c)

    rm -rf test  

    删除test文件或者文件夹

    命令:rm -rf test (注意,这样做是非常危险的!)

    rm是删除命令。rm -r 并不是一个完整的命令后面还需要加上需要删除的路径
    例如:rm -r test 就是删除test 不管他是文件还是目录,rm的使用详情如下:
    语法 rm (选项)(参数)
    选项
    -d:直接把欲删除的目录的硬连接数据删除成0,删除该目录;
    -f:强制删除文件或目录;
    -i:删除已有文件或目录之前先询问用户;
    -r或-R:递归处理,将指定目录下的所有文件与子目录一并处理;
    --preserve-root:不对根目录进行递归操作;
    -v:显示指令的详细执行过程。
    参数 文件:指定被删除的文件列表,如果参数中含有目录,则必须加上-r或者-R选项。 实例 交互式删除当前目录下的文件test和example rm -i test example Remove test ?n(不删除文件test) Remove example ?y(删除文件example)
    删除当前目录下除隐含文件外的所有文件和子目录
    # rm -r *

    rmdir Remove directory 删除目录
    rlogin remote login -l指定登录用户名,rlogin IP/主机名
    rsh remote shell 远程执行shell,-l指定用户
    rmp RedHat Package Manager RedHat软件包管理工具,类似Windows里面的“添加/删除程序”,-a查询所有,-e卸载,-h显示进度,-i显示相关信息,-l列出软件所有文件名,-q查询,-p软件包内文件,-v显示执行过程;常用参数:-ivh安装并显示进度,-qpl查看软件包内文件,-qa查询一个软件是否安装过,--relocate指定安装目录,--rebuild编译+打包,--recompile编译+打包+安装
    scp secure copy

    用于Linux间复制,基于ssh远程复制,-p保留修改时间权限,-r递归,-P指定端口,-v显示进度,

    https://www.runoob.com/linux/linux-comm-scp.html

    常见用法:

    1、从本地复制到远程

    复制文件:

    scp local_file remote_username@remote_ip:remote_folder 
    或者 
    scp local_file remote_username@remote_ip:remote_file 
    或者 
    scp local_file remote_ip:remote_folder 
    或者 
    scp local_file remote_ip:remote_file

    复制文件夹:

    scp -r local_folder remote_username@remote_ip:remote_folder 
    或者 
    scp -r local_folder remote_ip:remote_folder 

    2、从远程复制到本地

    从远程复制到本地,只要将从本地复制到远程的命令的后2个参数调换顺序即可

    复制文件:

    scp remote_username@remote_ip:remote_folder local_file

    复制文件夹:

    scp -r remote_username@remote_ip:remote_folder local_folder
    sed Stream Editor 流编辑器,本身即先查,在CMD中匹配字符两侧要有//,sed -OPTION 'CMD' file,选项:-n安静模式,-i直接修改不屏幕输出,-r支持扩展正则,-e多命令,-f文件指定动作;命令:a增,d删除,i插,c改,s正则查,p屏幕输出,g获取内存缓冲区内容并替代当前模板块中文字,G获取内容追加,h内容拷贝到内存,H内容追加到内存
    set set 主要作用是显示系统中已经存在的shell变量,以及设置shell变量的新变量值,不能够定义新的shell变量,定义新的变量使用declare命令。
    shutdown   关机,-t设定延迟时间,-k通知所有用户,-r重启,-h关机后停机,-c取消关机,-f强制关机,time设定关机时间
    sleep sleep 动作延迟
    sort sort 排序,-b忽略行首空格,-r反向,-n以数值,-o排序结果输出文件,-t指定列分隔符,-k指定排序列,-f忽略大小定
    split split 将大文件分割成小文件,-N每N行分割成一个文件,-bN每N字节分割成一个文件,-C按字节分割保证完整性
    ssh Secure Shell 远程登录Linux,-l指定用户,-p指定端口
    sshpass   一款ssh免密码输入软件
    su switch user 切换用户,root切任何用户不需要密码,但其他用户之间切换需要密码,- user表示切换到用户user并将用户环境一并切换,-c执行命令再退回原用户
    sudo super user do 受限制的su
    svn SubVersioN  
    sync 强制将内存写入硬盘  
    tar tape archive 打包归档文件,-c创建create,-x提取extract,-t查看list,-f指定归档文件,-m解压时不变更文件更改时间,-p解压时原权限不变,-v显示执行详情,-r向归档文件中追加,-u更新归档文件中文件
    tail tail

    查看尾部n行

    常见用法:

    #将a文件的后10行内容重定向放入b文件中

    tail a_file -n -10 > b_file

    #查看内核打印后100行日志

    dmesg | tail -100

    tee   用于读取标准输入的数据,并将其内容输出成文件
    tree   以树状图列出文件目录结构
    touch touch 创建,修改文件或者目录的时间属性,若文件不存在,系统会建立一个新的文件,更改文件权限再结合chmod
    top top 实时显示系统中各个进程的资源占用状况,该命令可以按CPU使用、内存使用和执行时间对任务进行排序
    umount Unmount 卸载,可以通过设备名卸载或挂载点卸载
    unset unset 用于删除变量或函数
    unix2dos   和dos2unix互为孪生的一个命令,它是将Linux&Unix格式文件转换为Windows格式文件的命令。
    useradd   新增用户
    userdel   删除用户
    usermod   修改用户
    vi/vim   参照:https://www.cnblogs.com/hylogs/p/13215771.html
    w who 显示目前登入系统的用户信息
    xargs eXtended ARGuments 给命令传递参数的一个过滤器,也是组合多个命令的一个工具,它把一个数据流分割为一些足够小的块,以方便过滤器和命令进行处理 
    wc Word Count 计算文件的Byte数、字数、或是列数,-c只显示字节数,-l只显示行数,-w只统计单词数
    who who 显示当前系统所有使用者等信息
    whoami whoami 命令用于显示自身用户名称。 
    which which  命令用于查找文件
    whereis where is 查看文件

    relevant contents:

    https://www.cnblogs.com/diffx/p/9726680.html

    https://www.cnblogs.com/wenqiangwu/archive/2013/09/12/3317040.html

     

     

    linux权限说明:

    drwxr-xr-x   2 root root 48 2013-11-27 16:34 test/

    第一个栏位,表示文件的属性。Linux的文件基本上分为三个属性:可读(r),可写(w),可执行(x)。

    这里有十个格子可以添(具体程序实现时,实际上是十个bit位)。

      第一个字母表示文件类型,

            ”-”,普通文件.

            ”d”目录,字母”d”,是dirtectory(目录)的缩写.

            ”l”符号链接。请注意,一个目录或者说一个文件夹是一个特殊文件,这个特殊文件存放的是其他文件和文件夹的相关信息.

            ”b”块设备文件。

            ”c”字符设备文件。

    紧接着的3*3个字符分3组,各指示此文件的读、写、执行权限,对于owner、group、others而言。
    因为Linux是多用户多任务系统,所以一个文件可能同时被许多人使用,所以我们一定要设好每个文件的权限,其文件的权限位置排列顺序是(以-rwxr-xr-x为例):  
    rwx(Owner)r-x(Group)r-x(Other)  
    这个例子表示的权限是:使用者自己可读,可写,可执行;同一组的用户可读,不可写,可执行;其它用户可读,不可写,可执行。
    另外,有一些程序属性的执行部分不是X,而是S,这表示执行这个程序的使用者,临时可以有和拥有者一样权力的身份来执行该程序。一般出现在系统管理之类的指令或程序,让使用者执行时,拥有root身份。 

    第二个栏位,表示文件个数。如果是文件的话,那这个数目自然是1了,如果是目录的话,那它的数目就是该目录中的文件个数了。

    第三个栏位,表示该文件或目录的拥有者。若使用者目前处于自己的Home,那这一栏大概都是它的账号名称。

    第四个栏位,表示所属的组(group)。每一个使用者都可以拥有一个以上的组,不过大部分的使用者应该都只属于一个组,只有当系统管理员希望给予某使用者特殊权限时,才可能会给他另一个组。
    第五栏位,表示文件大小。文件大小用byte来表示,而空目录一般都是1024byte,当然可以用其它参数使文件显示的单位不同,如使用ls –k就是用kb莱显示一个文件的大小单位,不过一般我们还是以byte为主。  

    第六个栏位,表示最后一次修改时间。以“月,日,时间”的格式表示,如Aug 15 5:46表示8月15日早上5:46分。

    第七个栏位,表示文件名。我们可以用ls –a显示隐藏的文件名。

    修改文件权限用,chmod命令

    常用的linux文件权限:
    444 r--r--r--
    600 rw-------
    644 rw-r--r--
    666 rw-rw-rw-
    700 rwx------
    744 rwxr--r--
    755 rwxr-xr-x
    777 rwxrwxrwx
    从左至右,1-3位数字代表文件所有者的权限,4-6位数字代表同组用户的权限,7-9数字代表其他用户的权限。
    而具体的权限是由数字来表示的,读取的权限等于4,用r表示;写入的权限等于2,用w表示;执行的权限等于1,用x表示;
    通过4、2、1的组合,得到以下几种权限:0(没有权限);4(读取权限);5(4+1 | 读取+执行);6(4+2 | 读取+写入);7(4+2+1 | 读取+写入+执行)
    以755为例:

    >
    作者:豌豆果果
    出处:https://www.cnblogs.com/hylogs/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
    觉得有所帮助,可以请果果喝咖啡哟^_^!

  • 相关阅读:
    C# 将DataTable存储到DBF文件中
    C#如何打开DBF数据库文件
    delphi 怎么获取工程版本号
    C#如何定义全局变量
    C# 控制台程序如何能不显示窗口
    【字符串问题】字符串压缩(将原来的字符串转化为字符串里的字符+该字符串出现的次数)
    【字符串问题】将一个字符串中的单词进行倒置
    【字符串问题】返回一个字符串的指定子串
    【2014华为校园招聘成都上机笔试题目】
    【字符串问题】求一个字符串中重复出现的最长的子串
  • 原文地址:https://www.cnblogs.com/hylogs/p/12032038.html
Copyright © 2011-2022 走看看