zoukankan      html  css  js  c++  java
  • 青蛙学Linux—工具书之Linux命令

    1、init与systemd相关常用命令

    1.1、init常用命令

    系统服务启动|停止|重启|重新载入|查看运行状态:

    service daemon start|stop|restart|reload|status

    开机启动相关命令:

    # 设置服务开机启动
    chkconfig daemon on
    
    # 取消服务开机启动
    chkconfig daemon off
    
    # 将自定义服务加入系统服务
    chkconfig --add daemon
    
    # 从系统服务中删除自定义服务
    chkconfig --del daemon
    
    # 设置服务在指定的运行级开机启动|取消开机启动
    chkconfig --level runlevel daemon on|off
    
    # 查看所有服务在各运行级下的开机启动状态
    chkconfig --list
    
    #查看指定服务在各运行级下的开机启动状态
    chkconfig --list daemon

    查看当前运行级:

    runlevel

    1.2、systemd常用命令

    默认Target:

    # 查看当前默认Target
    systemctl get-default
    
    # 修改当前默认Target
    systemctl set-default Target.target

    启用|禁用Unit配置文件(如果配置文件中设置了开机启动则相当于激活|取消开机启动):

    systemctl enable|disable Unit.service

    查看Unit配置文件状态:

    # 输出所有Unit及其状态
    systemctl list-unit-files
    
    # 输出指定Unit的状态
    systemctl list-unit-files Unit
    
    # 输出指定类型的Unit状态
    systemctl list-unit-files --type=Unit type

    重新加载所有Unit配置文件:

    systemctl daemon-reload

    系统服务启动|停止|重启|重新加载|查看运行状态:

    systemctl start|stop|restart|reload|status Unit.service

    2、系统管理与维护类命令

    2.1、echo

    在标准输出中显示文字,也可以用来打印变量,在shell编程中经常使用,命令语法如下:

    echo [-e|n] string

    选项:

    • -e:若字符串中出现某些字符则进行特别处理,不会将其当成一般文字输出,这些字符可能为a 发出警告音; 删除前一个字符;c 最后不加上换行符号;f 换行但光标仍然停留在原来的位置; 换行且光标移至行首; 光标移至行首,但不换行; 插入tab;v 与f相同;\ 插入字符; n 插入nn(八进制)所代表的ASCII字符
    • -n:不自动换行

    一个用途:Linux命令在执行后会有个返回码,如果返回码为0表示命令执行成功,非0则代表命令执行失败,可以使用echo命令查看返回码:

    echo $?

    2.2、ls

    列出指定目录下的文件和子目录,命令语法如下:

    ls [选项] [目录或文件]

    常用选项:

    • -a:显示指定目录下的所有文件及子目录,包含隐藏文件及目录
    • -l:除文件名外,同时列出文件或目录的权限、使用者、大小等详细信息,ls –l可缩写为ll
    • -d:只显示指定目录的信息,不显示该目录下的文件和子目录
    • -S:以文件大小排序
    • -p:对目录加上表示符号“/”
    • -F:在每个文件名后附上一个字符以说明该文件的类型。这些字符有“*”表示可执行的文件;“/”表示目录;“@”表示符号链接;“|”表示FIFOs;“=”表示套接字
    • -h:以易于阅读的形式输出文件大小,例如1GB的文件直接以GB为单位(有涉及到输出大小的命令均有-h选项)
    • -i:显示文件的inode号

    当该命令省略目录时为在当前目录下执行。

    2.3、passwd

    设置用户密码,命令语法如下:

    passwd [选项] [用户名]

    常用选项:

    • -k:保持身份验证令牌不过期
    • -d:删除已命名帐号的密码(只有根用户才能进行此操作)
    • -l:锁定指名帐户的密码(仅限 root 用户)
    • -u:解锁指名账户的密码(仅限 root 用户)
    • -e:终止指名帐户的密码(仅限 root 用户)
    • -f:强制执行操作
    • -x:密码的最长有效时限(只有根用户才能进行此操作)
    • -n:密码的最短有效时限(只有根用户才能进行此操作)
    • -w:在密码过期前多少天开始提醒用户(只有根用户才能进行此操作)
    • -i:当密码过期后经过多少天该帐号会被禁用(只有根用户才能进行此操作)
    • -S:报告已命名帐号的密码状态(只有根用户才能进行此操作)
    • --stdin:从标准输入读取令牌(只有根用户才能进行此操作)

    当该命令省略用户名时为为当前用户设置密码。

    2.4、su

    将当前系统用户切换到指定用户,命令语法如下:

    su [选项] [用户名]

    常用选项:

    • -或-l:加载用户的环境变量并使目前的shell成为用户的默认shell
    • -c:使用指定用户执行一个命令

    当该命令省略用户名时默认切换到root用户。

    注意:切换用户时如果没有更过用户的环境变量,则某些命令可能因为环境变量未改变而无法执行。

    2.5、dmesg

    显示开机信息。内核将系统开机信息存储在系统缓冲区(ring buffer),可通过该命令查看。命令语法如下:

    dmesg [选项]

    常用选项:

    • -c:显示开机信息后清除ring buffer
    • -s:设置缓冲区大小,默认8192

    该命令经常用于系统异常诊断。

    注意:/var/log/dmesg文件也保存开机信息,不过该信息为系统上一次启动时的信息;dmesg命令查看的是当次系统开机信息。

    2.6、free

    显示当前内存使用状态,包括物理内存、swap、共享内存和缓存。命令语法如下:

    free [选项]

    常用选项:

    • -b:以Byte为单位显示内存使用情况
    • -m:以MB为单位显示内存使用情况
    • -k:以kb为单位显示内存使用情况
    • -s:根据指定的间隔秒数持续显示内存使用情况

    2.7、ps

    显示系统进程在瞬间的运行状态。命令语法如下:

    ps [选项]

    常用选项:

    • -a:显示所有用户的进程,包含每个进程的完整路径
    • -x:显示所有系统进程,包括那些没有终端的程序
    • -u:显示使用者的名称和起始时间
    • -f:详细显示进程执行的路径
    • -e:输出除内核以外所有进程的信息

    常用组合:ps -aux、ps –ef

    2.8、top

    提供实时的系统状态监控,能够实时显示系统运行时间、系统负载、CPU内存使用及进程的资源占用状态。命令语法如下:

    top

    2.9、pwd

    显示当前所在目录的绝对路径,命令语法如下:

    pwd

    2.10、cd

    切换目录。命令语法如下:

    cd [目录]

    cd cd ~将返回当前用户的默认家目录;cd ~用户名返回指定用户的家目录;cd ..cd ../返回上级目录。

    2.11、date

    显示或修改系统时间。命令语法如下:

    date [选项] [时间格式(+开头后面为格式)]

    常用选项:

    • -d:显示当前时间之前或之后的时间
    • -s:修改时间,仅root用户有权限执行

    一些例子:

    # 指定格式显示当前时间
    [root@localhost ~]# date '+%Y-%m-%d'
    2018-10-31
    
    # 查看当前时间前两天的时间
    [root@localhost ~]# date -d '2 day ago'
    2018年 10月 29日 星期一 16:33:09 CST
    
    # 查看当前时间后两天的时间
    [root@localhost ~]# date -d '2 day'
    2018年 11月 02日 星期五 16:33:40 CST

    2.12、who

    显示当前乙登录的用户信息。命令语法如下:

    who [选项]

    常用选项:

    • -a:-b -d --login -p -r -t -T -u 选项的组合
    • -b:上次系统启动时间
    • -d:显示已死的进程
    • -H:输出头部的标题列
    • -l:显示系统登录进程
    • -m:只面对和标准输入有直接交互的主机和用户
    • -p:显示由 init 进程衍生的活动进程
    • -q:列出所有已登录用户的登录名与用户数量
    • -r:显示当前的运行级别
    • -s:只显示名称、线路和时间(默认)
    • -T or -w:用+,- 或 ? 标注用户消息状态
    • -u:列出已登录的用户

    2.13、w

    显示当前系统负载、登录系统的用户以及他们正在执行的程序。命令语法如下:

    w [选项]

    该命令的选项均不常用。

    2.14、whoami

    显示当前正在操作系统的用户。命令语法如下:

    whoami

    2.15、uname

    显示操作系统相关信息。命令语法如下:

    uname [选项]

    常用选项:

    • -a:输出所有信息

    2.16、uptime

    显示系统运行时长及平均负载。命令语法如下:

    uptime

    2.17、last

    列出所有登录过系统的用户的相关信息。命令语法如下:

    last

    2.18、source

    可以执行一个没有执行权限的文件,通常用于在修改配置文件之后不用退出登录而使修改立即生效。命令语法如下:

    source 文件

    2.19、dd

    用于从标准输入或文件中读取数据,根据指定的格式来转换数据,在输出到文件、设备或标准输出。命令语法如下:

    dd [if=] [of=] [ibs|obs|bs=] [cbs=] [skip=] [seek=] [count=] [conv=]

    命令详解:

    • if=:输入的文件或设备,缺省为标准输入
    • of=:输出的文件或设备,缺省为标准输出
    • ibs|obs|bs=:一次输入|输出|输入/输出的块大小,可自定义单位,默认bytes
    • cbs=:一次转换多少个字节,默认bytes
    • skip=:从输入文件开头跳过指定个块之后再开始复制
    • seek=:从输出文件开头跳过指定个块之后再开始复制
    • count=:仅拷贝指定个块,块大小等于ibs|bs指定的大小
    • conv=:用指定的参数转换文件,指定的参数有以下几种

        ascii:转换ebcdic为ascii
        ebcdic:转换ascii为ebcdic
        ibm:转换ascii为alternate ebcdic
        block:把每一行转换为长度为cbs,不足部分用空格填充
        unblock:使每一行的长度都为cbs,不足部分用空格填充
        lcase:把大写字符转换为小写字符
        ucase:把小写字符转换为大写字符
        swab:交换输入的每对字节
        noerror:出错时不停止
        notrunc:不截短输出文件
        sync:将每个输入块填充到ibs个字节,不足部分用空(NUL)字符补齐

    3、文件管理类命令

    3.1、rm

    删除文件或目录,删除目录时将删除该目录下的所有子目录及文件。命令语法如下:

    rm [选项] 文件或目录

    常用选项:

    • -r:删除目录及目录下面的文件及子目录,不加该选项rm无法删除目录
    • -f:不提示直接删除
    • -i:交互式删除,在删除时给出提示,rm的默认选项

    注意:当一个命令存在默认选项时,可以使用command使其取消默认行为。如直接执行rm时会提示是否删除文件,因为-i选项是rm的默认选项,如果执行 m则不会提示。

    3.2、ln

    在文件或目录之间创建一个链接。命令语法如下:

    ln [选项] 源文件 链接名

    在Linux下的链接方式有两种:硬链接(Hard Link)和符号链接(Symbolic Link),ln不加选项时创建的是硬链接;加上-s选项时创建的是符号链接。

    • 硬链接:通过文件的inode号进行链接,链接文件和源文件的inode号相同。
    • 符号链接:也称为软链接,类似于Windows下的快捷方式。

    3.3、cp

    拷贝文件或目录。命令语法如下:

    cp [选项] 源文件或目录 目标文件或目录

    常用选项:

    • -a:在拷贝目录时使用,保留目录所有的信息,包含文件链接、文件属性,并递归的拷贝目录
    • -r:若给出的源文件是一个目录,此时将递归复制该目录下的所有文件及子目录,此时目标文件必须为一个目录名
    • -p:保留文件的修改时间和存取权限
    • -i:如果已有相同文件名的目标文件存在,则提示用户是否覆盖,默认选项

    3.4、find

    在指定路径下查找指定的文件。命令语法如下:

    find [路径] [选项]

    常用选项:

    • -amin/cmin/mmin:查找在指定时间被存取/更改/更改过的文件或目录,单位以分钟计算
    • -atime/ctime/mtime:查找在指定时间被存取/更改/更改过的文件或目录,单位以24小时计算
    • -name:查找指定的文件名
    • -path:指定目录
    • -prune:排除前面设定的内容
    • -size:查找指定大小的文件
    • -type:查找指定类型的文件
    • -user:查找指定用户的文件
    • -print:将搜索结果输出到标准输出
    • -exec:对搜索出符合条件的文件执行所给定的命令,而不询问用户是否执行该命令。执行命令的格式为-exec 命令 {} ;。注意:这里的{}表示符合条件的文件
    • -ok:对搜索出符合条件的文件执行所给定的命令,询问用户是否执行。命令格式同-exec

    两个例子:

    # 查找/var/log目录下文件名以.log结尾,两天前的,属于root用户的普通文件并拷贝到/tmp目录下
    find /var/log -name '*.log' -mtime +2 -user root -type f -exec cp {} /tmp ;
    
    # 在系统根目录下查找不在/var/log和/usr/bin目录下的文件名为main.c的文件
    find /  ( -path /var/log -o -path /usr/bin ) -prune -o -name “main.c”

    3.5、whereis

    在指定目录中查找符合条件的二进制文件/源码文件/帮助文件。命令语法如下:

    whereis [选项] 文件名

    常用选项:

    • -b:只查找二进制文件
    • -B <目录>:在指定目录下查找二进制文件
    • -f:不显示文件名前的路径
    • -m:只查找帮助文件
    • -M <目录>:在指定目录下查找帮助文件
    • -s:只查找源代码文件
    • -S <目录>:在指定目录下查找源代码文件
    • -u:查找不包含指定类型的文件

    3.6、file/stat

    file命令用于显示文件的类型,对于长度为0的文件将识别为空文件;对于符号链接缺省情况将显示符号链接引用的真实文件的路径。命令语法如下:

    file 文件名

    stat命令用于查看文件的详细状态。命令语法如下:

    stat 文件名

    3.7、grep

    Linux下的文本过滤工具,根据指定的字符串对文件的每一行进行搜索,找到匹配内容则输出整行内容;该命令也可以用于过滤命令执行后的输出。命令语法如下:

    grep [选项] 查找的字符串 文件

    常用选项:

    • -c:只显示符合条件的行数,而不显示被匹配到的内容
    • -i:搜索时忽略大小写
    • -n:在显示的搜索结果上显示行号
    • -E:支持扩展的正则表达式
    • -w:被匹配的文本只能是单词,而不能是单词中的某一部分
    • -v:只打印没有匹配到的内容

    grep家族的三个命令:

    • grep,标准grep命令,支持基本正则表达式
    • egrep,扩展的grep命令,支持基本和扩展的正则表达式,等价于grep –E
    • fgrep,快速grep命令,不支持正则表达式,按照字符串的字面意思进行匹配,等价于grep –F

    3.8、diff

    比较文件或目录的内容。如果比较的是文件,则只能比较文本文件,以逐行的方式比较两个文件的异同;如果比较的是目录,将会比较两个目录下名字相同的文本文件,列出不同的二进制文件、公共子目录和只在一个目录出现的文件。命令语法如下:

    diff [选项] 文件1或目录1 文件2或目录2

    要看懂diff输出的结果,我们来看一个例子:

    # 当前目录下有文件test1和test2,以下为文件内容
    [root@localhost ~]# more test1
    abc
    bcd
    acd
    ddc
    [root@localhost ~]# more test2
    abc
    ddc
    sdxs
    
    # 执行diff命令
    [root@localhost ~]# diff test1 test2
    2,3d1
    < bcd
    < acd
    4a3,4
    > sdxs
    > 

    diff显示不同的方式为告诉我们需要怎么修改test1文件才能和test2相同。通过上面例子的输出中,2,3表示文件test1中的2到3行,d表示删除(三种标识,a添加,c修改,d删除),1表示文件test2中的行,<表示test1中相应行的内容,意思就是说test1中必须删除2到3行才能与test2第一行相同;4a3,4表示在test1中的第4行必须添加内容才能和test2中的3到4行相同,>表示test2中相应行的内容。

    3.9、mv

    移动或重命名文件或目录,如果源类型和目标类型都是文件或目录且在同一目录下时将重命名文件或目录。命令语法如下:

    mv [选项] 源文件或目录 目标文件或目录

    常用选项:

    • -i:交互式操作,如果已存在文件或目录时,将会询问是否覆盖
    • -f:强制执行,不询问
    • -b:在覆盖文件前进行备份

    3.10、more

    如果一个文本文件比较长,一屏无法显示完毕,就需要使用more命令。more命令读取文本文件时,每次一屏显示,并且在每屏后暂停,同时在屏幕底部显示单词“More”。如果此时按“Enter”键,more命令就会接着再显示文本的一行,依此类推;如果按空格键,more命令就继续显示文本文件的另一屏信息。命令语法如下:

    more [选项] 文件

    3.11、cat

    将文件内容打印到标准输出。命令格式如下:

    cat [选项] 文件名

    3.12、touch

    改变指定文件的访问时间和修改时间,若指定文件不存在则创建文件;如果没有指定时间,则使用当前时间。命令语法如下:

    touch [选项] [设定的时间] 文件

    3.13、mkdir

    创建目录。命令语法如下:

    mkdir [选项] 目录名

    常用选项:

    • -p:递归的创建目录,如果上级目录不存在也会被创建

    3.14、rmdir

    删除空目录,如果目录非空则无法删除。命令语法如下:

    rmdir [选项] 目录

    常用选项:

    • -p:递归的删除空目录

    3.15、wc

    计算输入内容的Byte数、字数或列数,若不指定文件,或给定的文件名为-,则表示从标准输入设备读取数据。命令语法如下:

    wc [选项] [文件]

    常用选项:

    • -c:显示Bytes数
    • -l:显示列数
    • -w:显示字数

    4、压缩解压缩命令

    4.1、gzip/gunzip

    生成扩展名为“.gz”的压缩文件。gunzip是gzip的硬链接。gzip只能对文件进行压缩,无法压缩目录,即使指定压缩目录,也只能压缩该目录下的所有文件。命令语法如下:

    gzip [选项] 文件

    常用选项:

    • -d:对压缩文档进行解压缩
    • -t:检查压缩文档的完整性
    • -l:显示压缩文件的压缩信息,显示内容为压缩文档大小、未压缩文档大小、压缩比和未压缩文档名

    注意:使用gzip进行压缩时,在完成压缩后会删除源文件;同样的,在解压缩后会删除压缩文档。

    4.2、bzip2/bunzip2

    生成扩展名为“.bz2”的压缩文件。bunzip2是bzip2的符号链接。bzip2同gzip一样仅能对文件进行压缩,无法压缩目录。命令语法如下:

    bzip [选项] 文件

    常用选项:

    • -d:对压缩文档进行解压缩
    • -k:压缩/解压缩完成后保留源文件/压缩文档
    • -t:测试压缩文档的完整性

    4.3、tar

    对文件或目录进行打包归档成扩展名为”.tar“的包,但并不压缩。如果需要压缩可通过选项调用gzip或bzip2进行压缩。命令语法如下:

    tar [选项] 归档文件存放路径 源文件或目录

    常用选项:

    • -c:创建新的归档文件
    • -t:列出档案文件中已经归档的文件列表
    • -x:解开tar包
    • -z:在归档/解开的过程中调用gzip进行压缩/解压缩
    • -j:在归档/解开的过程中调用bzip2进行压缩/解压缩
    • -f:后面紧跟档案文件的存储设备或路径,默认是磁盘,需要指定档案文件名;如果存储设备是磁带,只需要指定磁带设备名即可。该选项必须为tar的最后一个选项
    • -v:在归档/解开的过程中显示归档文件的名称
    • -p:在文件归档的过程中保持文件的属性不发生变化
    • --exclude file:在归档过程中排除指定的文件

    一些例子:

    # 打包当前目录下的a目录并使用gzip压缩,归档文件保存在/tmp目录下
    tar -zcvf /tmp/a.tar.gz a
    
    # 将/tmp下的a.tar.gz包解压缩到/etc目录下
    tar -zxvf /tmp/a.tar.gz -C /etc
    
    # 在/opt目录下,仅解开/opt/etc.tar.gz压缩文件中的/etc/inittab文件。
    tar -zxvf /opt/etc.tar.gz  -C /opt etc/inittab
    
    # 将/etc目录打包压缩后直接解压到/opt目录下,而不生成打包的档案文件。
    tar -zcvf - /etc | tar –zxvf -  -C /opt

    4.4、zip/unzip

    zip用于生成扩展名为”.zip“的压缩包,unzip用于解开zip包。命令语法如下:

    zip [选项] 压缩文件名 源文件或目录
    unzip [选项] zip包

    5、磁盘管理与维护类命令

    5.1、df

    查看磁盘分区及空间占用状态。命令语法如下:

    df [选项]

    常用选项:

    • -h:以容易理解的格式输出分区占用空间的大小,比如1GB显示为1GB而不是1000MB
    • -k:以kB为单位输出分区占用空间大小
    • -m:以MB为单位输出分区占用空间大小
    • -i:显示各分区占用的inodes信息
    • -T:显示磁盘分区的文件系统类型

    5.2、du

    显示文件或目录占用的磁盘空间信息。命令语法如下:

    du [选项] 文件或目录

    常用选项:

    • -h:以易于理解的格式显示文件或目录的大小
    • -s:仅显示每个参数的总和,例如du –h /etc将显示etc目录下每个文件的大小,du –sh /etc则显示整个etc目录的大小

    5.3、fsck

    检查文件系统并尝试修复文件系统的错误。命令语法如下:

    fsck [选项] 设备名

    常用选项:

    • -t:指定要检查的文件系统类型,一般情况下可不添加此选项,fsck会自动识别
    • -y:如果出现需要手动确认提示时,自动输入yes

    注意:使用该命令修复文件系统时,该文件系统对应的分区必须处于卸载状态,不能在挂载的磁盘分区上执行修复,否则可能导致数据遭到破坏或损坏磁盘。另外,xfs文件系统建议使用xfs_repair命令修复。

    5.4、mount/umount

    挂载/卸载指定的文件系统。命令语法如下:

    mount [选项] [-L <标签>] [-o <选项>] [-t <文件系统类型>] 设备名 挂载点
    umount 挂载点

    常用选项:

    • -r:以只读模式挂载设备
    • -w:以可读可写模式挂载设备,mount的默认选项
    • -a:加载文件/etc/fstab中指定的所有设备
    • -L <标签>:标签其实就是磁盘分区标识的别名,标签可以自定义以便于记忆,在Linux下磁盘分区设备名通常比较复杂难记,利用标签可以使设备名简单易记
    • -o <选项>:指定加载文件系统时的选项。ro,以只读模式加载;rw,以可读可写模式加载;remount,重新挂载。例如将/dev/sda1以可读写模式重新挂载到/etc目录可使用命令mount –o remount,rw /dev/sda1 /etc
    • -t <文件系统类型>:指定设备的文件系统类型,一般使用此选项,mount将会自动识别设备的文件系统类型

    6、网络设置与维护命令

    6.1、ifconfig

    通常用于显示当前网络接口的配置状况,也可以用于设置网络接口的信息,但是这些信息将在系统重启后失效。命令语法如下:

    ifconfig [选项] [interface] [inet|up|down|netmask|addr|broadcast]

    一些例子:

    # 在网卡enp0s3上配置两个IP地址,分别为192.168.60.136、192.168.66.138,子网掩码为255.255.255.0
    [root@centos7 ~]# ifconfig enp0s3 192.168.60.136 netmask 255.255.255.0
    [root@centos7 ~]# ifconfig enp0s3:0 192.168.66.138 netmask 255.255.255.0
    
    # 修改网卡的MAC地址为新的MAC地址,使用以下命令:
    [root@centos7 ~]#ifconfig enp0s3 hw ether xx:xx:xx:xx:xx:xx
    
    # 将网卡enp0s3禁用后再启用,使用以下命令:
    [root@centos7 ~]# ifconfig enp0s3 down
    [root@centos7 ~]# ifconfig enp0s3 up

    ifconfig命令现在以渐渐被ip命令所取代。

    6.2、ip

    # 设置IP地址
    [root@localhost ~]# ip addr add 192.168.100.193/24 dev enp0s3
    
    # 查看IP地址
    [root@localhost ~]#ip addr show enp0s3
    
    # 删除IP地址,只需用del代替add
    [root@localhost ~]#ip addr del 192.168.100.193/24 dev enp0s3
    
    # 列出路由表条目
    [root@localhost ~]#ip route show
    
    # 查看路由包来自的接口
    [root@localhost ~]#ip route get 172.16.213.51
    
    # 激活网络接口
    [root@localhost ~]# ip link set eth0 up
    
    # 停止网络接口
    [root@localhost ~]# ip link set eth0 down
    
    # 监控netlink消息
    [root@localhost ~]# ip monitor all
    
    # 显示网络统计信息
    [root@localhost ~]# ip -s link
    
    # 设置默认网关
    [root@localhost ~]# ip route add default via 192.168.1.254

    6.3、scp

    secure copy,将文件或目录从一台主机通过网络拷贝到另一台主机,scp传输数据使用的是SSH协议。命令语法如下:

    # scp分为两个方向,一是从远程主机下载文件,一是将本地主机的文件推送到远程主机上
    
    # 从远程主机上下载文件
    scp [选项] 远程主机用户名@IP地址:文件路径 本地保存路径
    
    # 将本地文件推送到远程主机
    scp [选项] 本地文件路径 远程主机用户名@IP地址:文件保存路径

    常用选项:

    • -r:拷贝目录
    • -P:指定远程主机的SSH端口号

    6.4、traceroute

    显示网络数据包传输到指定主机经过的路由信息,追踪数据传输的路由状况,默认发送数据包大小38Bytes。traceroute利用ICMP协议,有些网络设备可能会屏蔽ICMP数据包,因此会出现节点没有回应的状态,如果在指定的时间内(时间可自定义),traceroute检测不到某个路由节点的回应信息,就在屏幕上输出“*”,表示节点无回应。命令语法如下:

    traceroute [选项] 远程主机名或IP地址 [数据包大小]

    常用选项:

    • -i:使用指定接口发送数据包
    • -w:设置等待远程主机回应的时间
    • -s:设置本地主机发送数据包的IP地址

    6.5、mtr

    mtr是Linux下一个非常好用的网络连通性判断工具,结合了ping、traceroute、nslookup的相关特性。命令语法如下:

    mtr 主机名或IP地址

    6.6、wget

    从网络下下载内容。命令语法如下:

    wget [选项] 网址

    常用选项:

    • -c:断点续传
    • -O:下载并以不同的文件名保存
    • -b:后台下载
    • --limit-rate:限速下载
    • --no-cookies:不使用cookie
    • --no-check-certificate:不要验证服务器的证书

    --no-cookies --no-check-certificate在下载HTTPS链接出现问题时配合使用,不验证服务器证书和不使用cookie。

    6.7、telnet

    通过telnet协议与远程主机通信或获取远程主机对应端口的信息。命令语法如下:

    telnet [主机名或IP地址] [端口]

    6.8、netstat

    显示本机网络连接、运行端口和路由表等信息。命令语法如下:

    netstat [选项]

    常用选项:

    • -a:显示本机所有连接和监听端口
    • -n:以IP地址的形式显示当前建立的有效连接和端口
    • -r:显示路由表信息
    • -s:显示按协议的统计信息。默认地,将显示IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP和UDPv6的统计信息
    • -v:显示当前的有效连接,与“-n”选项类似
    • -t:显示所有的TCP协议连接情况
    • -u:显示所有的UDP协议连接情况
    • -i:显示自动配置接口的状态
    • -l:仅显示连接状态为“LISTEN”的服务的网络状态
    • -p:显示连接对应的PID与Program name

    常用组合:netstat –antlp、netstat –i、netstat –r

  • 相关阅读:
    【转】三层架构,MVC, ASP.net MVC的区别
    code-Behind
    从输入 URL 到页面加载完成的过程中都发生了什么事情?
    javascript杂谈
    网页设计中透明效果的使用技巧
    phpstorm+Xdebug断点调试PHP
    MySql IFNULL 联表查询出来的null 如何赋值
    php读取目录下的文件
    CI框架程序--本地调试之后部署新浪SAE
    各个手机APP客户端内置浏览器useragent
  • 原文地址:https://www.cnblogs.com/yu2006070-01/p/9855954.html
Copyright © 2011-2022 走看看