zoukankan      html  css  js  c++  java
  • Linux常用命令

    一、文件处理命令

    1. ls

    显示当前目录下所有文件。

    -a:显示包括隐藏文件在内的所有文件

    -l:显示详细信息。ls -l也可写为ll

    -d:查看目录属性

    -h:人性化显示

    2.mkdir

    建立目录。

    -p:递归创建,即可以以:mkdir -p a/b/c的方式创建一串目录

    3.cd

    切换目录。cd直接回车或cd ~会进入家目录,cd -进入上次进入的目录,cd ..进入上级目录。

    4.pwd

    查询当前所在位置。

    5.rm

    删除文件。如果删除对象为目录,则用rm -r。如果不想让linux询问是否删除,则用rm -rf强制删除。

    6.cp

    复制文件。cp [选项][原文件或目录][目标目录] 

    -r:复制目录

    -a:复制全部属性

    7.mv 

    剪切文件或目录。mv [原文件或目录][目标目录]

    如果原文件和目标在同一目录下,则可以实现改名。

    8.ln

    将原文件生成链接文件。硬链接:ln [原文件或目录][目标目录],软链接:ln -s [原文件或目录][目标目录]

    链接分为硬链接和软链接。一个文件的硬链接可以视为该文件的另一个接入点,拥有相同的id号,修改一个后另一个也改变,删除掉一个后另一个仍可使用。不可针对目录使用。

    一个文件的软链接类似于创建该文件的快捷方式,拥有自己的id号,修改一个后另一个也改变,删除掉原文件后软链接不可使用。

    9.file

    file filename:用来查看filename文件的类型。

    10.less

    less filename:用来查看filename文件的内容。

    11.alias

    例如alias foo='ls ; cd' 可以自定义foo这一命令,可以使用unalias删除自定义的别名。

    重启后,自定义的别名会消失。

    12.cat

    查看文件内容。

    cat > 文件名:手动输入内容并将其录入文件中,以Ctrl+d退出。

    13.wc

    显示文件中包含的行、字和字节数。

    14.head、tail

    -n 数字:显示文件的前几行或后几行。

    15.touch

    将文件的修改和访问时间改为当前时间。

    16.sort

    对文件内容排序。

    sort > 文件名,输入内容后会排序后写入文件。

    有多种选项。

    -n:按数值排序

    -k:指定排序的字段(从第几个字段到第几个字段)

    -r:倒序排序

    -t:指定字段间的分隔符

    17.uniq

    对文件去重,只能操作排好序的文件,所以需要与sort连用:

    sort 文件名 | uniq

    -c:输出计数

    18.cut

    用于从文件中抽取内容。

    -c:数值表示抽取的区间。cut -c a-b 文件名

    -f:抽取第几个字段

    -d:指定分隔符

    19.paste、join

    paste将一个文本粘贴到另一个文本中(按行),join类似于关系型数据库,依照两个文本的共有的列将两个文本合并。

    paste 文件1 文件2

    join 文件1 文件2

    20.comm

    对两个文件进行比较。comm 文件1 文件2

    21.tr

    文本替换,需要和管道符连用,如:

    less 文件 | tr a-z A-Z 即可将所有小写字母替换为大写字母。

    二、文件搜索命令

    1.locate

    按照文件名搜索文件。locate只能搜索创建一天以上的文件,如果要搜索创建一天以内的文件需要先执行updatedb,之后就能搜索到。locate不会搜索一部分目录(如tmp)。

    2.whereis和which

    whereis用来搜索命令的位置。which用来搜索命令的位置和别名。

    3.find

    搜索文件。find [搜索范围][搜索条件]

    find /tmp -name abc,即为在tmp目录下搜索文件名为abc的文件。可以使用通配符*(匹配任意个字符)、?(匹配一个字符)、[](匹配括号内的一个字符)。

    除-name外,-iname不区分大小写,-user按照所有者搜索,-nouser搜索没有所有者的文件,-mtime修改时间,-size文件大小

    也可以搜索多个条件,中间用-a(and)或-o(or)相连。

    如需要对结果进行进一步处理,可以在语句后面增加-exec [待执行命令] {} ;

    4.grep

    在文件中搜索字符串。grep [选项] 字符串 文件名

    -v:取反,即不包含

    -i:不区分大小写

    -l:打印出文件名而不是匹配的字符串

    三、帮助命令

    1.man

    帮助。man 命令

    -f:等同于whatis,获取命令的描述。

    -k:等同于apropos,获取命令相关的所有命令和文件。

    2.help

    获得命令的可用选项。命令 --help,或help 命令。

    3.type

    显示命令的类型。

    四、压缩命令

    1.zip

    zip 压缩文件名 源文件。压缩目录:zip -r 压缩文件名 源文件。

    unzip 文件名,解压缩。

    2.gz

    gzip 源文件,压缩后源文件消失。如需保留,需要:gzip -c 源文件 > 压缩文件。

    gzip -r 目录,会将目录中的所有文件压缩。

    gunzip 文件名,解压缩。

    3.bz2

    bzip2 源文件,压缩后源文件消失。如需保留,需要:bzip2 -k 源文件。不能压缩目录。

    bunzip2 文件名,解压缩。

    4.tar

    tar -cvf 文件名 源文件,打包。

    tar -xvf 文件名,解包。

    tar -zcvf 压缩包名.tar.gz 源文件,先打包再压缩。

    tar -zxvf 压缩包名.tar.gz。

    tar -jcvf 压缩包名.tar.bz2 源文件,先打包再压缩。

    tar -jxvf 压缩包名.tar.bz2。

    五、关机和重启

    1.shutdown

    关机。shutdown [选项] 时间 &。&使程序在后台执行。

    -h:关机

    -r:重启

    -c:取消上一次命令。

    2.logout退出。

    六、挂载

    1.mount

    查看挂载的设备。

    mount -a,根据配置文件自动挂载。

    mount [-t 文件系统] [-o 特殊选项] 设备文件名 挂载点

    2.umount

    卸载设备。umount 设备名或挂载点。

    七、用户

    1.w

    查看当前用户信息。

    2.last

    查看当前和过去登录的用户信息。

    3.lastlog

    查看所有用户最后一次登录时间。

    八、网络

    1.netstat

    查看当前主机网络连接信息。

    -t:列出tcp协议端口。

    -u:列出udp协议端口。

    -n:使用ip地址和端口号。

    -l:列出监听状态的网络服务。

    -a:列出所有网络连接。

    通过管道符,可以获取所有监听的服务:

    netstat -an | grep LISTENING

    再加上wc统计数量:

    netstat -an | grep LISTENING | wc -l

    2.ifconfig

    查看与配置网络状态。

    ifconfig eth0 192.168.x.x netmask 255.255.255.0,临时配置eth0网卡的ip和子网掩码。

    3.setup

    不同于ifconfig,setup为永久配置ip和掩码。只有redhat系列才有此命令。

    4.通过修改配置文件的方式配置ip地址

    vi /etc/sysconfig/network-scripts/ifcfg-eth0:配置网卡信息文件。

    vi /etc/sysconfig/network:配置主机名文件。

    vi /etc/resolv.conf:配置DNS文件。

    5.ifdown、ifup

    ifdown eth0:禁用eth0网卡。

    ifup eth0:启用eth0网卡。

    6.route -n

    查看路由列表,可以显示网关。

    7.nslookup

    查看域名对应的ip地址,同时可以看见自身的dns。

    8.ping

    向某域名发送数据包,从而判断该域名的网络状况。

    该命令会一直进行下去,用-c 次数 限定次数。

    9.traceroute

    查看连接到某ip时的路由。如果节点禁止ping,则不能正常显示该节点。

    10.wget

    wget url下载内容。

    11.ssh

    ssh 用户名@ip:远程管理指定的linux服务器。

    12.scp

    上传和下载。

    scp [-r] 用户名@ip:文件路径 本地路径:下载

    scp [-r] 本地文件 用户名@ip:上传路径:上传

    如果是目录,则加上-r。

    九、重定向

    1. >

    可以将输出重定向到某个文件中。如:

    ll > output.txt 将ll的输出内容重定向到output.txt文件中。

    如果命令存在错误,且需要将错误信息重定向,则需要在>之前加上2,如:

    ll /abcd 2>output.txt

    如果命令不存在错误信息,则加上2后不会重定向。

    2. |

    command 1 | command 2:将前一个命令的输出作为后一个命令的输入。

    用 | command | 可以组成一个过滤器。

    如果无论是否有错误都希望重定向到文件中,则使用 &>。

    十、输出

    echo:显示一行文本,可以用通配符。

    echo *s:显示所有以s结尾的文件。

    echo $((2*2)):4

    $有点类似于编程语言中的%。

    echo {1,2,3}:1 2 3

    echo a{1..5}:a1 a2 a3 a4 a5,用花括号类似于python中的map函数。

    十一、权限

    1.chmod

    修改文件权限,后面参数详见https://www.cnblogs.com/adolfmc/p/5898115.html

    2.umask

    设置权限掩码(即默认权限)。常用的是0002(所有者和用户组可读写,其他用户只读)、0022(所有者可读写,用户组和其他用户只读)。

    3.sudo和su

    su用于其他用户用超级用户的密码登录超级用户的账号,会另启动一个shell环境,而sudo用于其他用户用自己的密码登录超级用户的账号,不会另启动一个新环境。

    具体详见http://blog.csdn.net/xiaoputao0903/article/details/24230553

    4.chown

    改变文件所有者。

    chown 用户名 文件名

    5.chgrp

    改变文件所属组。

    chgrp 所属名 文件名(或者chown 拥有者:用户组)

    6.ACL权限

    ACL权限用于为文件所有人、所有组、其他人之外的人分配权限。

    getfacl 文件名:查看文件的acl权限。

    setfacl 选项 文件名:为文件分配acl权限。详见https://www.cnblogs.com/Jimmy1988/p/7249844.html

    setfacl -m u:user:rwx 文件:设置user对文件具有读、写、执行权限。

    setfacl -m m:rw- 文件:设置文件最大权限为读写。

    setfacl -x u:user 文件:删除user的acl权限。

    setfacl -m g:group 文件:设置用户组的acl权限。

    setfacl -b 文件:删除文件所有的acl权限。

    setfacl -m u:user:rwx -R 目录:将目录下所有文件都赋予acl权限。

    setfacl -m d:u:user:rwx -R 文件/目录:将目录下所有文件都赋予acl权限,包括目录下新建的文件。

    十二、进程

    1.ps

    查看当前在运行的进程。

    x:显示所有进程。

    aux:显示所有进程的详细信息。

    另外,还有pstree命令,可以显示进程树。

    2.top

    动态显示当前进程。按q退出。

    3.kill、killall、pkill

    kill pid:杀死进程。pid可用ps查询。kill用于杀死单个进程(或发信号),killall用于杀死多个进程(或发信号),killall后面跟进程名。

    kill -1:平滑重启进程

    kill -9:强制结束进程

    pkill -9 -t:按照终端号切除用户。(终端号可用w命令查看)

    4.&

    命令后面加上&可以将命令放入后台执行。运行中按Ctrl+z效果相同。

    可以用jobs查看后台运行的进程。

    fg %工作号和bg %工作号可以把进程恢复到前台或者后台执行。

    5.nohup

    进程前面加上nohup命令,可以使得进程与当前终端脱离,即当前终端关闭后,进程任然可以运行。

    十三、环境变量

    printenv、set都可以输出当前环境变量。printenv可以加上变量名,单独输出此变量的值。

    十四、系统资源

    1.vmstat

    查看当前系统资源情况。

    2.dmesg

    查看硬件状态。

    3.free

    查看内存使用状态。

    4./proc/cpuinfo

    用cat查看proc目录下的cpuinfo文件,可以看到cpu的信息。

    5.uptime

    查看平均负载。

    6.uname -a

    查看内核信息。

  • 相关阅读:
    WP8微信5.3开始内测 支持Cortana语音 两微破冰了?
    微信公众平台开放设备接入能力 智能手环首批支持
    iPad版微信终于来临了 微信5.4版搜索更智能 转账就是发消息
    消息推送
    微信推广功能支持图片广告和投放外链广告
    微信公众平台增加更多统计项 让你更了解运营数据
    老贼微信公众号运营现状小起底
    Matlab norm 用法小记
    matlab的cell数组
    matlab中元胞数组(cell)转换为矩阵
  • 原文地址:https://www.cnblogs.com/00986014w/p/8419940.html
Copyright © 2011-2022 走看看