精华内容
下载资源
问答
  • Linux20个常用命令

    万次阅读 多人点赞 2016-11-24 17:43:40
    玩过Linux的人都会知道,Linux中的命令的确是非常多,但是...然而每人玩Linux的目的都不同,所以他们常用命令也就差异非常大,而我主要是用Linux进行C/C++和shell程序编写的,所以常用到的命令可以就会跟一管理Li

            玩过Linux的人都会知道,Linux中的命令的确是非常多,但是玩过Linux的人也从来不会因为Linux的命令如此之多而烦恼,因为我们只需要掌握我们最常用的命令就可以了。当然你也可以在使用时去找一下man,他会帮你解决不少的问题。然而每个人玩Linux的目的都不同,所以他们常用的命令也就差异非常大,而我主要是用Linux进行C/C++和shell程序编写的,所以常用到的命令可以就会跟一个管理Linux系统的人有所不同。因为不想在使用是总是东查西找,所以在此总结一下,方便一下以后的查看。不多说,下面就说说我最常用的Linux命令。



    1、cd命令

    这是一个非常基本,也是大家经常需要使用的命令,它用于切换当前目录,它的参数是要切换到的目录的路径,可以是绝对路径,也可以是相对路径。如:

    cd /root/Docements # 切换到目录/root/Docements
    cd ./path          # 切换到当前目录下的path目录中,“.”表示当前目录  
    cd ../path         # 切换到上层目录中的path目录中,“..”表示上一层目录


    2、ls命令

    这是一个非常有用的查看文件与目录的命令,list之意,它的参数非常多,下面就列出一些我常用的参数吧,如下:

    -l :列出长数据串,包含文件的属性与权限数据等
    -a :列出全部的文件,连同隐藏文件(开头为.的文件)一起列出来(常用)
    -d :仅列出目录本身,而不是列出目录的文件数据
    -h :将文件容量以较易读的方式(GB,kB等)列出来
    -R :连同子目录的内容一起列出(递归列出),等于该目录下的所有文件都会显示出来

    注:这些参数也可以组合使用,下面举两个例子:

    ls -l #以长数据串的形式列出当前目录下的数据文件和目录
    ls -lR #以长数据串的形式列出当前目录下的所有文件


    3、grep命令

    该命令常用于分析一行的信息,若当中有我们所需要的信息,就将该行显示出来,该命令通常与管道命令一起使用,用于对一些命令的输出进行筛选加工等等,它的简单语法为

    grep [-acinv] [--color=auto] '查找字符串' filename

    它的常用参数如下:

    -a :将binary文件以text文件的方式查找数据
    -c :计算找到‘查找字符串’的次数
    -i :忽略大小写的区别,即把大小写视为相同
    -v :反向选择,即显示出没有‘查找字符串’内容的那一行
    # 例如:
    # 取出文件/etc/man.config中包含MANPATH的行,并把找到的关键字加上颜色
    grep --color=auto 'MANPATH' /etc/man.config
    # 把ls -l的输出中包含字母file(不区分大小写)的内容输出
    ls -l | grep -i file


    4、find命令

    find是一个基于查找的功能非常强大的命令,相对而言,它的使用也相对较为复杂,参数也比较多,所以在这里将给把它们分类列出,它的基本语法如下:

    find [PATH] [option] [action]
    
    # 与时间有关的参数:
    -mtime n : n为数字,意思为在n天之前的“一天内”被更改过的文件;
    -mtime +n : 列出在n天之前(不含n天本身)被更改过的文件名;
    -mtime -n : 列出在n天之内(含n天本身)被更改过的文件名;
    -newer file : 列出比file还要新的文件名
    # 例如:
    find /root -mtime 0 # 在当前目录下查找今天之内有改动的文件
    
    # 与用户或用户组名有关的参数:
    -user name : 列出文件所有者为name的文件
    -group name : 列出文件所属用户组为name的文件
    -uid n : 列出文件所有者为用户ID为n的文件
    -gid n : 列出文件所属用户组为用户组ID为n的文件
    # 例如:
    find /home/ljianhui -user ljianhui # 在目录/home/ljianhui中找出所有者为ljianhui的文件
    
    # 与文件权限及名称有关的参数:
    -name filename :找出文件名为filename的文件
    -size [+-]SIZE :找出比SIZE还要大(+)或小(-)的文件
    -tpye TYPE :查找文件的类型为TYPE的文件,TYPE的值主要有:一般文件(f)、设备文件(b、c)、
                 目录(d)、连接文件(l)、socket(s)、FIFO管道文件(p);
    -perm mode :查找文件权限刚好等于mode的文件,mode用数字表示,如0755;
    -perm -mode :查找文件权限必须要全部包括mode权限的文件,mode用数字表示
    -perm +mode :查找文件权限包含任一mode的权限的文件,mode用数字表示
    # 例如:
    find / -name passwd # 查找文件名为passwd的文件
    find . -perm 0755 # 查找当前目录中文件权限的0755的文件
    find . -size +12k # 查找当前目录中大于12KB的文件,注意c表示byte
    

    5、cp命令

    该命令用于复制文件,copy之意,它还可以把多个文件一次性地复制到一个目录下,它的常用参数如下: 

    -a :将文件的特性一起复制
    -p :连同文件的属性一起复制,而非使用默认方式,与-a相似,常用于备份
    -i :若目标文件已经存在时,在覆盖时会先询问操作的进行
    -r :递归持续复制,用于目录的复制行为
    -u :目标文件与源文件有差异时才会复制
    

    例如 :

    cp -a file1 file2 #连同文件的所有特性把文件file1复制成文件file2
    cp file1 file2 file3 dir #把文件file1、file2、file3复制到目录dir中


    6、mv命令

    该命令用于移动文件、目录或更名,move之意,它的常用参数如下:

    -f :force强制的意思,如果目标文件已经存在,不会询问而直接覆盖
    -i :若目标文件已经存在,就会询问是否覆盖
    -u :若目标文件已经存在,且比目标文件新,才会更新

    注:该命令可以把一个文件或多个文件一次移动一个文件夹中,但是最后一个目标文件一定要是“目录”。


    例如:

    mv file1 file2 file3 dir # 把文件file1、file2、file3移动到目录dir中
    mv file1 file2 # 把文件file1重命名为file2


    7、rm命令

    该命令用于删除文件或目录,remove之间,它的常用参数如下:

    -f :就是force的意思,忽略不存在的文件,不会出现警告消息
    -i :互动模式,在删除前会询问用户是否操作
    -r :递归删除,最常用于目录删除,它是一个非常危险的参数


    例如:

    rm -i file # 删除文件file,在删除之前会询问是否进行该操作
    rm -fr dir # 强制删除目录dir中的所有文件

    8、ps命令

    该命令用于将某个时间点的进程运行情况选取下来并输出,process之意,它的常用参数如下:

    -A :所有的进程均显示出来
    -a :不与terminal有关的所有进程
    -u :有效用户的相关进程
    -x :一般与a参数一起使用,可列出较完整的信息
    -l :较长,较详细地将PID的信息列出

    其实我们只要记住ps一般使用的命令参数搭配即可,它们并不多,如下:

    ps aux # 查看系统所有的进程数据
    ps ax # 查看不与terminal有关的所有进程
    ps -lA # 查看系统所有的进程数据
    ps axjf # 查看连同一部分进程树状态


    9、kill命令

    该命令用于向某个工作(%jobnumber)或者是某个PID(数字)传送一个信号,它通常与ps和jobs命令一起使用,它的基本语法如下:

    kill -signal PID

    signal的常用参数如下:

    注:最前面的数字为信号的代号,使用时可以用代号代替相应的信号。

    1:SIGHUP,启动被终止的进程
    2:SIGINT,相当于输入ctrl+c,中断一个程序的进行
    9:SIGKILL,强制中断一个进程的进行
    15:SIGTERM,以正常的结束进程方式来终止进程
    17:SIGSTOP,相当于输入ctrl+z,暂停一个进程的进行

    例如:

    # 以正常的结束进程方式来终于第一个后台工作,可用jobs命令查看后台中的第一个工作进程
    kill -SIGTERM %1 
    # 重新改动进程ID为PID的进程,PID可用ps命令通过管道命令加上grep命令进行筛选获得
    kill -SIGHUP PID


    10、killall命令

    该命令用于向一个命令启动的进程发送一个信号,它的一般语法如下:

    killall [-iIe] [command name]


    它的参数如下:

    -i :交互式的意思,若需要删除时,会询问用户
    -e :表示后面接的command name要一致,但command name不能超过15个字符
    -I :命令名称忽略大小写
    # 例如:
    killall -SIGHUP syslogd # 重新启动syslogd


    11、file命令

    该命令用于判断接在file命令后的文件的基本数据,因为在Linux下文件的类型并不是以后缀为分的,所以这个命令对我们来说就很有用了,它的用法非常简单,基本语法如下:

    file filename
    #例如:
    file ./test


    12、tar命令

    该命令用于对文件进行打包,默认情况并不会压缩,如果指定了相应的参数,它还会调用相应的压缩程序(如gzip和bzip等)进行压缩和解压。它的常用参数如下:

    -c :新建打包文件
    -t :查看打包文件的内容含有哪些文件名
    -x :解打包或解压缩的功能,可以搭配-C(大写)指定解压的目录,注意-c,-t,-x不能同时出现在同一条命令中
    -j :通过bzip2的支持进行压缩/解压缩
    -z :通过gzip的支持进行压缩/解压缩
    -v :在压缩/解压缩过程中,将正在处理的文件名显示出来
    -f filename :filename为要处理的文件
    -C dir :指定压缩/解压缩的目录dir


    上面的解说可以已经让你晕过去了,但是通常我们只需要记住下面三条命令即可:

    压缩:tar -jcv -f filename.tar.bz2 要被处理的文件或目录名称
    查询:tar -jtv -f filename.tar.bz2
    解压:tar -jxv -f filename.tar.bz2 -C 欲解压缩的目录
    

    注:文件名并不定要以后缀tar.bz2结尾,这里主要是为了说明使用的压缩程序为bzip2



    13、cat命令

    该命令用于查看文本文件的内容,后接要查看的文件名,通常可用管道与more和less一起使用,从而可以一页页地查看数据。例如:

    cat text | less # 查看text文件中的内容
    # 注:这条命令也可以使用less text来代替


    14、chgrp命令

    该命令用于改变文件所属用户组,它的使用非常简单,它的基本用法如下:

    chgrp [-R] dirname/filename
    -R :进行递归的持续对所有文件和子目录更改
    # 例如:
    chgrp users -R ./dir # 递归地把dir目录下中的所有文件和子目录下所有文件的用户组修改为users


    15、chown命令

    该命令用于改变文件的所有者,与chgrp命令的使用方法相同,只是修改的文件属性不同,不再详述。



    16、chmod命令

    该命令用于改变文件的权限,一般的用法如下:

    chmod [-R] xyz 文件或目录
    -R:进行递归的持续更改,即连同子目录下的所有文件都会更改
    

    同时,chmod还可以使用u(user)、g(group)、o(other)、a(all)和+(加入)、-(删除)、=(设置)跟rwx搭配来对文件的权限进行更改。

    # 例如:
    chmod 0755 file # 把file的文件权限改变为-rxwr-xr-x
    chmod g+w file # 向file的文件权限中加入用户组可写权限


    18、vim命令

    该命令主要用于文本编辑,它接一个或多个文件名作为参数,如果文件存在就打开,如果文件不存在就以该文件名创建一个文件。vim是一个非常好用的文本编辑器,它里面有很多非常好用的命令,在这里不再多说。你可以从这里下载vim常用操作的详细说明。



    19、gcc命令

    对于一个用Linux开发C程序的人来说,这个命令就非常重要了,它用于把C语言的源程序文件,编译成可执行程序,由于g++的很多参数跟它非常相似,所以这里只介绍gcc的参数,它的常用参数如下:

    -o :output之意,用于指定生成一个可执行文件的文件名
    -c :用于把源文件生成目标文件(.o),并阻止编译器创建一个完整的程序
    -I :增加编译时搜索头文件的路径
    -L :增加编译时搜索静态连接库的路径
    -S :把源文件生成汇编代码文件
    -lm:表示标准库的目录中名为libm.a的函数库
    -lpthread :连接NPTL实现的线程库
    -std= :用于指定把使用的C语言的版本
    
    # 例如:
    # 把源文件test.c按照c99标准编译成可执行程序test
    gcc -o test test.c -lm -std=c99
    #把源文件test.c转换为相应的汇编程序源文件test.s
    gcc -S test.c
    


    20、time命令

    该命令用于测算一个命令(即程序)的执行时间。它的使用非常简单,就像平时输入命令一样,不过在命令的前面加入一个time即可,例如:

    time ./process
    time ps aux

    在程序或命令运行结束后,在最后输出了三个时间,它们分别是:

    user:用户CPU时间,命令执行完成花费的用户CPU时间,即命令在用户态中执行时间总和;

    system:系统CPU时间,命令执行完成花费的系统CPU时间,即命令在核心态中执行时间总和;

    real:实际时间,从command命令行开始执行到运行终止的消逝时间;



    注:用户CPU时间和系统CPU时间之和为CPU时间,即命令占用CPU执行的时间总和。实际时间要大于CPU时间,因为Linux是多任务操作系统,往往在执行一条命令时,系统还要处理其它任务。另一个需要注意的问题是即使每次执行相同命令,但所花费的时间也是不一样,其花费时间是与系统运行相关的。

    展开全文
  • Linux常用命令全集.rar

    2019-02-08 09:22:05
    Linux常用命令全集。Linux虽然是免费的,但它的确是一非常优秀的操作系统,与MS-WINDOWS相比具有可靠、 稳定、速度快等优点,且拥有丰富的根据UNIX版本改进的强大功能。下面,作为一典型的DOS 和WINDOWS用户,让...
  • kali linux常用命令

    2018-01-22 13:49:27
    kali linux常用命令
  • 本文是小编日常收集整理的有关linux常用命令的知识,非常不错具有参考借鉴价值,感兴趣的朋友一起看看吧
  • linux常用命令(50),最常用的命令。
  • 本文档是日常工作中实践环境下的linux常用命令汇总,包括开发、运维、日常监控、系统常用配置文件修改、系统调优、系统常见问题解决等。
  • linux常用20个命令

    万次阅读 多人点赞 2018-05-09 09:07:25
    玩过Linux的人都会知道,Linux中的命令的确是非常多,...然而每人玩Linux的目的都不同,所以他们常用命令也就差异非常大,而我主要是用Linux进行C/C++和shell程序编写的,所以常用到的命令可以就会跟一管理Li...


    玩过Linux的人都会知道,Linux中的命令的确是非常多,但是玩过Linux的人也从来不会因为Linux的命令如此之多而烦恼,因为我们只需要掌握我们最常用的命令就可以了。当然你也可以在使用时去找一下man,他会帮你解决不少的问题。然而每个人玩Linux的目的都不同,所以他们常用的命令也就差异非常大,而我主要是用Linux进行C/C++和shell程序编写的,所以常用到的命令可以就会跟一个管理Linux系统的人有所不同。因为不想在使用是总是东查西找,所以在此总结一下,方便一下以后的查看。不多说,下面就说说我最常用的Linux命令。

    1、cd命令
    这是一个非常基本,也是大家经常需要使用的命令,它用于切换当前目录,它的参数是要切换到的目录的路径,可以是绝对路径,也可以是相对路径。如:
    [plain]  view plain  copy
    1. cd /root/Docements # 切换到目录/root/Docements  
    2. cd ./path          # 切换到当前目录下的path目录中,“.”表示当前目录    
    3. cd ../path         # 切换到上层目录中的path目录中,“..”表示上一层目录  
    2、ls命令
    这是一个非常有用的查看文件与目录的命令,list之意,它的参数非常多,下面就列出一些我常用的参数吧,如下:
    [plain]  view plain  copy
    1. -l :列出长数据串,包含文件的属性与权限数据等  
    2. -a :列出全部的文件,连同隐藏文件(开头为.的文件)一起列出来(常用)  
    3. -d :仅列出目录本身,而不是列出目录的文件数据  
    4. -h :将文件容量以较易读的方式(GB,kB等)列出来  
    5. -R :连同子目录的内容一起列出(递归列出),等于该目录下的所有文件都会显示出来  
    注:这些参数也可以组合使用,下面举两个例子:
    [plain]  view plain  copy
    1. ls -l #以长数据串的形式列出当前目录下的数据文件和目录  
    2. ls -lR #以长数据串的形式列出当前目录下的所有文件  
    3、grep命令
    该命令常用于分析一行的信息,若当中有我们所需要的信息,就将该行显示出来,该命令通常与管道命令一起使用,用于对一些命令的输出进行筛选加工等等,它的简单语法为
    [plain]  view plain  copy
    1. grep [-acinv] [--color=auto] '查找字符串' filename  
    它的常用参数如下:
    [plain]  view plain  copy
    1. -a :将binary文件以text文件的方式查找数据  
    2. -c :计算找到‘查找字符串’的次数  
    3. -i :忽略大小写的区别,即把大小写视为相同  
    4. -v :反向选择,即显示出没有‘查找字符串’内容的那一行  
    5. # 例如:  
    6. # 取出文件/etc/man.config中包含MANPATH的行,并把找到的关键字加上颜色  
    7. grep --color=auto 'MANPATH' /etc/man.config  
    8. # 把ls -l的输出中包含字母file(不区分大小写)的内容输出  
    9. ls -l | grep -i file  
    4、find命令
    find是一个基于查找的功能非常强大的命令,相对而言,它的使用也相对较为复杂,参数也比较多,所以在这里将给把它们分类列出,它的基本语法如下:
    [plain]  view plain  copy
    1. find [PATH] [option] [action]  
    2.   
    3. # 与时间有关的参数:  
    4. -mtime n : n为数字,意思为在n天之前的“一天内”被更改过的文件;  
    5. -mtime +n : 列出在n天之前(不含n天本身)被更改过的文件名;  
    6. -mtime -n : 列出在n天之内(含n天本身)被更改过的文件名;  
    7. -newer file : 列出比file还要新的文件名  
    8. # 例如:  
    9. find /root -mtime 0 # 在当前目录下查找今天之内有改动的文件  
    10.   
    11. # 与用户或用户组名有关的参数:  
    12. -user name : 列出文件所有者为name的文件  
    13. -group name : 列出文件所属用户组为name的文件  
    14. -uid n : 列出文件所有者为用户ID为n的文件  
    15. -gid n : 列出文件所属用户组为用户组ID为n的文件  
    16. # 例如:  
    17. find /home/ljianhui -user ljianhui # 在目录/home/ljianhui中找出所有者为ljianhui的文件  
    18.   
    19. # 与文件权限及名称有关的参数:  
    20. -name filename :找出文件名为filename的文件  
    21. -size [+-]SIZE :找出比SIZE还要大(+)或小(-)的文件  
    22. -tpye TYPE :查找文件的类型为TYPE的文件,TYPE的值主要有:一般文件(f)、设备文件(b、c)、  
    23.              目录(d)、连接文件(l)、socket(s)、FIFO管道文件(p);  
    24. -perm mode :查找文件权限刚好等于mode的文件,mode用数字表示,如0755;  
    25. -perm -mode :查找文件权限必须要全部包括mode权限的文件,mode用数字表示  
    26. -perm +mode :查找文件权限包含任一mode的权限的文件,mode用数字表示  
    27. # 例如:  
    28. find / -name passwd # 查找文件名为passwd的文件  
    29. find . -perm 0755 # 查找当前目录中文件权限的0755的文件  
    30. find . -size +12k # 查找当前目录中大于12KB的文件,注意c表示byte  
    5、cp命令
    该命令用于复制文件,copy之意,它还可以把多个文件一次性地复制到一个目录下, 它的常用参数如下:
    [plain]  view plain  copy
    1. -a :将文件的特性一起复制  
    2. -p :连同文件的属性一起复制,而非使用默认方式,与-a相似,常用于备份  
    3. -i :若目标文件已经存在时,在覆盖时会先询问操作的进行  
    4. -r :递归持续复制,用于目录的复制行为  
    5. -u :目标文件与源文件有差异时才会复制  
    例如 :
    [plain]  view plain  copy
    1. cp -a file1 file2 #连同文件的所有特性把文件file1复制成文件file2  
    2. cp file1 file2 file3 dir #把文件file1、file2、file3复制到目录dir中  
    6、mv命令
    该命令用于移动文件、目录或更名,move之意,它的常用参数如下:
    [plain]  view plain  copy
    1. -f :force强制的意思,如果目标文件已经存在,不会询问而直接覆盖  
    2. -i :若目标文件已经存在,就会询问是否覆盖  
    3. -u :若目标文件已经存在,且比目标文件新,才会更新  
    注:该命令可以把一个文件或多个文件一次移动一个文件夹中,但是最后一个目标文件一定要是“目录”。

    例如:
    [plain]  view plain  copy
    1. mv file1 file2 file3 dir # 把文件file1、file2、file3移动到目录dir中  
    2. mv file1 file2 # 把文件file1重命名为file2  
    7、rm命令
    该命令用于删除文件或目录,remove之间,它的常用参数如下:
    [plain]  view plain  copy
    1. -f :就是force的意思,忽略不存在的文件,不会出现警告消息  
    2. -i :互动模式,在删除前会询问用户是否操作  
    3. -r :递归删除,最常用于目录删除,它是一个非常危险的参数  
    例如:
    [plain]  view plain  copy
    1. rm -i file # 删除文件file,在删除之前会询问是否进行该操作  
    2. rm -fr dir # 强制删除目录dir中的所有文件  
    8、ps命令
    该命令用于将某个时间点的进程运行情况选取下来并输出,process之意,它的常用参数如下:
    [plain]  view plain  copy
    1. -A :所有的进程均显示出来  
    2. -a :不与terminal有关的所有进程  
    3. -u :有效用户的相关进程  
    4. -x :一般与a参数一起使用,可列出较完整的信息  
    5. -l :较长,较详细地将PID的信息列出  
    其实我们只要记住ps一般使用的命令参数搭配即可,它们并不多,如下:
    [plain]  view plain  copy
    1. ps aux # 查看系统所有的进程数据  
    2. ps ax # 查看不与terminal有关的所有进程  
    3. ps -lA # 查看系统所有的进程数据  
    4. ps axjf # 查看连同一部分进程树状态  
    9、kill命令
    该命令用于向某个工作(%jobnumber)或者是某个PID(数字)传送一个信号,它通常与ps和jobs命令一起使用,它的基本语法如下:
    [plain]  view plain  copy
    1. kill -signal PID  
    signal的常用参数如下:
    注:最前面的数字为信号的代号,使用时可以用代号代替相应的信号。
    [plain]  view plain  copy
    1. 1:SIGHUP,启动被终止的进程  
    2. 2:SIGINT,相当于输入ctrl+c,中断一个程序的进行  
    3. 9:SIGKILL,强制中断一个进程的进行  
    4. 15:SIGTERM,以正常的结束进程方式来终止进程  
    5. 17:SIGSTOP,相当于输入ctrl+z,暂停一个进程的进行  
    例如:
    [plain]  view plain  copy
    1. # 以正常的结束进程方式来终于第一个后台工作,可用jobs命令查看后台中的第一个工作进程  
    2. kill -SIGTERM %1   
    3. # 重新改动进程ID为PID的进程,PID可用ps命令通过管道命令加上grep命令进行筛选获得  
    4. kill -SIGHUP PID  
    10、killall命令
    该命令用于向一个命令启动的进程发送一个信号,它的一般语法如下:
    [plain]  view plain  copy
    1. killall [-iIe] [command name]  
    它的参数如下:
    [plain]  view plain  copy
    1. -i :交互式的意思,若需要删除时,会询问用户  
    2. -e :表示后面接的command name要一致,但command name不能超过15个字符  
    3. -I :命令名称忽略大小写  
    4. # 例如:  
    5. killall -SIGHUP syslogd # 重新启动syslogd  
    11、file命令
    该命令用于判断接在file命令后的文件的基本数据,因为在Linux下文件的类型并不是以后缀为分的,所以这个命令对我们来说就很有用了,它的用法非常简单,基本语法如下:
    [plain]  view plain  copy
    1. file filename  
    2. #例如:  
    3. file ./test  
    12、tar命令
    该命令用于对文件进行打包,默认情况并不会压缩,如果指定了相应的参数,它还会调用相应的压缩程序(如gzip和bzip等)进行压缩和解压。它的常用参数如下:
    [plain]  view plain  copy
    1. -c :新建打包文件  
    2. -t :查看打包文件的内容含有哪些文件名  
    3. -x :解打包或解压缩的功能,可以搭配-C(大写)指定解压的目录,注意-c,-t,-x不能同时出现在同一条命令中  
    4. -j :通过bzip2的支持进行压缩/解压缩  
    5. -z :通过gzip的支持进行压缩/解压缩  
    6. -v :在压缩/解压缩过程中,将正在处理的文件名显示出来  
    7. -f filename :filename为要处理的文件  
    8. -C dir :指定压缩/解压缩的目录dir  
    上面的解说可以已经让你晕过去了,但是通常我们只需要记住下面三条命令即可:
    [plain]  view plain  copy
    1. 压缩:tar -jcv -f filename.tar.bz2 要被处理的文件或目录名称  
    2. 查询:tar -jtv -f filename.tar.bz2  
    3. 解压:tar -jxv -f filename.tar.bz2 -C 欲解压缩的目录  
    注:文件名并不定要以后缀tar.bz2结尾,这里主要是为了说明使用的压缩程序为bzip2

    13、cat命令
    该命令用于查看文本文件的内容,后接要查看的文件名,通常可用管道与more和less一起使用,从而可以一页页地查看数据。例如:
    [plain]  view plain  copy
    1. cat text | less # 查看text文件中的内容  
    2. # 注:这条命令也可以使用less text来代替  
    14、chgrp命令
    该命令用于改变文件所属用户组,它的使用非常简单,它的基本用法如下:
    [plain]  view plain  copy
    1. chgrp [-R] dirname/filename  
    2. -R :进行递归的持续对所有文件和子目录更改  
    3. # 例如:  
    4. chgrp users -R ./dir # 递归地把dir目录下中的所有文件和子目录下所有文件的用户组修改为users  
    15、chown命令
    该命令用于改变文件的所有者,与chgrp命令的使用方法相同,只是修改的文件属性不同,不再详述。

    16、chmod命令
    该命令用于改变文件的权限,一般的用法如下:
    [plain]  view plain  copy
    1. chmod [-R] xyz 文件或目录  
    2. -R:进行递归的持续更改,即连同子目录下的所有文件都会更改  
    同时,chmod还可以使用u(user)、g(group)、o(other)、a(all)和+(加入)、-(删除)、=(设置)跟rwx搭配来对文件的权限进行更改。

    [plain]  view plain  copy
    1. # 例如:  
    2. chmod 0755 file # 把file的文件权限改变为-rxwr-xr-x  
    3. chmod g+w file # 向file的文件权限中加入用户组可写权限  
    18、vim命令
    该命令主要用于文本编辑,它接一个或多个文件名作为参数,如果文件存在就打开,如果文件不存在就以该文件名创建一个文件。vim是一个非常好用的文本编辑器,它里面有很多非常好用的命令,在这里不再多说。你可以从这里下载 vim常用操作 的详细说明。

    19、gcc命令
    对于一个用Linux开发C程序的人来说,这个命令就非常重要了,它用于把C语言的源程序文件,编译成可执行程序,由于g++的很多参数跟它非常相似,所以这里只介绍gcc的参数,它的常用参数如下:
    [plain]  view plain  copy
    1. -o :output之意,用于指定生成一个可执行文件的文件名  
    2. -c :用于把源文件生成目标文件(.o),并阻止编译器创建一个完整的程序  
    3. -I :增加编译时搜索头文件的路径  
    4. -L :增加编译时搜索静态连接库的路径  
    5. -S :把源文件生成汇编代码文件  
    6. -lm:表示标准库的目录中名为libm.a的函数库  
    7. -lpthread :连接NPTL实现的线程库  
    8. -std= :用于指定把使用的C语言的版本  
    9.   
    10. # 例如:  
    11. # 把源文件test.c按照c99标准编译成可执行程序test  
    12. gcc -o test test.c -lm -std=c99  
    13. #把源文件test.c转换为相应的汇编程序源文件test.s  
    14. gcc -S test.c  
    20、time命令
    该命令用于测算一个命令(即程序)的执行时间。它的使用非常简单,就像平时输入命令一样,不过在命令的前面加入一个time即可,例如:
    [plain]  view plain  copy
    1. time ./process  
    2. time ps aux  
    在程序或命令运行结束后,在最后输出了三个时间,它们分别是:
    user:用户CPU时间,命令执行完成花费的用户CPU时间,即命令在用户态中执行时间总和;
    system:系统CPU时间,命令执行完成花费的系统CPU时间,即命令在核心态中执行时间总和;
    real:实际时间,从command命令行开始执行到运行终止的消逝时间;

    注:用户CPU时间和系统CPU时间之和为CPU时间,即命令占用CPU执行的时间总和。实际时间要大于CPU时间,因为Linux是多任务操作系统,往往在执行一条命令时,系统还要处理其它任务。另一个需要注意的问题是即使每次执行相同命令,但所花费的时间也是不一样,其花费时间是与系统运行相关的。

    展开全文
  • linux下Oracle常用命令

    2018-10-09 20:39:30
    linux下Oracle常用命令,如启动数据库、启动监听、建用户、建表空间等
  • Linux常用命令大全

    2018-10-15 18:44:47
    Linux常用命令大全,最常用的linux系统操作命令
  • linux常用命令集(PDF版)

    2018-12-25 15:51:49
    linux常用命令集的PDF版,包含了常见的LINUX使用命令,适合新手学习。
  • Linux 下java常用命令总结 Linux 下java常用命令总结 Linux 下java常用命令总结
  • 玩转Linux常用命令实例指南

    万人学习 2019-09-28 11:40:56
    人工智能、物联网、大数据时代,Linux正有着一统天下的趋势,几乎每程序员岗位,都要求掌握Linux。本课程零基础也能轻松入门。 本课程以简洁易懂的语言手把手教你系统掌握日常所需的Linux知识,每知识点都会配合...
  • 最全Linux常用命令大全.pdf
  • linux 命令是对 Linux 系统进行管理的命令。对于 Linux 系统来说,无论是中央处理器、内存、磁盘驱动器、键盘、鼠标,还是用户等都是文件, ...本文档整理了Linux运维必须掌握的150个常用命令,送给Linux运维新手。
  • Linux 常用电脑命令,可用作电脑桌面,使用比较方便 。
  • 包含备份项目、启动/关闭tomcat等等命令
  • 04.1.1 Linux常用命令-文件处理命令-命令格式与目录处理命令ls.mp4 04.1.2 Linux常用命令-文件处理命令-目录处理命令.mp4 04.1.3 Linux常用命令-文件处理命令-文件处理命令.mp4 04.1.4 Linux常用命令-文件处理...
  • Linux46条常用命令

    2018-03-22 11:47:29
    Linux相比windows比较麻烦的就是很多东西都要用命令来控制,当然,这也是很多人喜欢linux的原因,比较短小但却功能强大。为了方便大家查找linux的相关命令,上传一PDF版的常用命令
  • linux60个常用命令总结

    2016-09-23 15:50:01
    很详细的讲解linux常用的60基本命令,掌握这些基本上就能随意操作linux系统了。
  • Linux常用命令pdf版

    2019-02-18 09:12:40
    一般的常用命令都有,PDF版主要是可以下载到手机上,当电子书、工具书随时看。
  • linux系列之常用运维命令整理笔录

    万次阅读 多人点赞 2019-10-28 17:33:21
    本博客记录工作中需要的linux运维命令,大学时候开始接触linux,会一些基本操作,可是都没有整理起来,加上是做开发,不做运维,有些命令忘记了,所以现在整理成博客,当然vi,文件操作等就不介绍了,慢慢积累一些...

    系列博客专栏:

    本博客记录工作中需要的linux运维命令,大学时候开始接触linux,会一些基本操作,可是都没有整理起来,加上是做开发,不做运维,有些命令忘记了,所以现在整理成博客,当然vi,文件操作等就不介绍了,慢慢积累一些其它拓展的命令,博客不定时更新,本博客命令基于Centos系统

    在这里插入图片描述

    一、系统监控

    1、free命令使用

    • free命令简介
      free 命令能够显示系统中物理上的空闲和已用内存,还有交换内存,同时,也能显示被内核使用的缓冲和缓存

    • free命令语法

    语法:free [param]
    

    param可以为:

    • -b:以Byte为单位显示内存使用情况;

    • -k:以KB为单位显示内存使用情况;

    • -m:以MB为单位显示内存使用情况;

    • -o:不显示缓冲区调节列;

    • -s<间隔秒数>:持续观察内存使用状况;

    • -t:显示内存总和列;

    • -V:显示版本信息。

    • free命令使用
      在这里插入图片描述
      Mem:表示物理内存统计

    • total:表示物理内存总数(total=used+free)

    • used:表示系统分配给缓存使用的数量(这里的缓存包括buffer和cache)

    • free:表示未分配的物理内存总数

    • shared:表示共享内存

    • buffers:系统分配但未被使用的buffers 数量。

    • cached:系统分配但未被使用的cache 数量。

    -/+ buffers/cache:表示物理内存的缓存统计

    • (-buffers/cache) 内存数: (指的第一部分Mem行中的used – buffers – cached)
    • (+buffers/cache) 内存数: (指的第一部分Mem行中的free + buffers + cached)

    (-buffers/cache)表示真正使用的内存数, (+buffers/cache) 表示真正未使用的内存数

    Swap:表示硬盘上交换分区的使用情况

    2、ulimit命令使用

    ulimit用于显示系统资源限制的信息
    语法:ulimit [param]
    param参数可以为:

    • -a  显示目前资源限制的设定。
    • -c <core文件上限>  设定core文件的最大值,单位为区块。
    • -d <数据节区大小>  程序数据节区的最大值,单位为KB。
    • -f <文件大小>  shell所能建立的最大文件,单位为区块。
    • -H  设定资源的硬性限制,也就是管理员所设下的限制。
    • -m <内存大小>  指定可使用内存的上限,单位为KB。
    • -n <文件数目>  指定同一时间最多可开启的文件数。
    • -p <缓冲区大小>  指定管道缓冲区的大小,单位512字节。
    • -s <堆叠大小>  指定堆叠的上限,单位为KB。
    • -S  设定资源的弹性限制。
    • -t <CPU时间>  指定CPU使用时间的上限,单位为秒。
    • -u <程序数目>  用户最多可开启的程序数目。
    • -v <虚拟内存大小>  指定可使用的虚拟内存上限,单位为KB

    在这里插入图片描述

    3、top命令使用

    top命令可以实时动态地查看系统的整体运行情况,是一个综合了多方信息监测系统性能和运行信息的实用工具,TOP命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,有点像window系统的任务管理器

    语法:top [param]
    

    param为:

    • -b:以批处理模式操作;
    • -c:显示完整的治命令;
    • -d:屏幕刷新间隔时间;
    • -I:忽略失效过程;
    • -s:保密模式;
    • -S:累积模式;
    • -u [用户名]:指定用户名;
    • -p [进程号]:指定进程;
    • -n [次数]:循环显示的次数。

    top命令分为上下两个部分:

    • 系统统计信息
    • 系统进程信息
      在这里插入图片描述
      系统统计信息
    top - 11:38:01 up 231 days,  2:06,  1 user,  load average: 0.88, 0.22, 0.18
    Tasks: 170 total,   1 running, 169 sleeping,   0 stopped,   0 zombie
    %Cpu(s): 38.7 us,  3.5 sy,  0.0 ni, 42.0 id, 15.5 wa,  0.0 hi,  0.3 si,  0.0 st
    KiB Mem :  8010580 total,   927820 free,  2411572 used,  4671188 buff/cache
    KiB Swap:  4063228 total,  2933688 free,  1129540 used.  5153128 avail Mem 
    
    • row1:任务队列信息,同 uptime 命令的执行结果
      top - 11:38:01 up 231 days, 2:06, 1 user, load average: 0.88, 0.22, 0.18

      • 11:38:01 (当前系统时间)
      • up 231 days, 2:06(系统运行时间)
      • 1 user (当前登录用户数)
      • load average: 0.88, 0.22, 0.18 (系统的平均负载数,表示 1分钟、5分钟、15分钟到现在的平均数)
    • row2:进程统计信息
      Tasks: 170 total, 1 running, 169 sleeping, 0 stopped, 0 zombie

      • 170 total(系统当前总进程总数)
      • 1 running (正在运行的进程数)
      • 169 sleeping(睡眠进程数)
      • 0 stopped (停止进程数)
      • 0 zombie (僵尸进程数)
    • row3:CPU 统计信息
      %Cpu(s): 38.7 us, 3.5 sy, 0.0 ni, 42.0 id, 15.5 wa, 0.0 hi, 0.3 si, 0.0 st

      • 38.7 us, (用户空间CPU占用率)
      • 3.5 sy (内核空间CPU占用率)
      • 0.0 ni (用户进程空间改变过优先级的进程CPU的占用率)
      • 42.0 id(空闲CPU占有率)
      • 15.5 wa (等待输入输出的CPU时间百分比)
      • 0.0%hi (硬件中断请求)
      • 0.3%si (软件中断请求)
      • 0.0%st (分配给运行在其它虚拟机上的任务的实际 CPU时间)
    • row4:内存状态
      KiB Mem : 8010580 4671188 , 927820 free, 2411572 used, 4671188 buff/cache

      • 4671188 total (物理内存总量 )
      • 2411572 used (已使用的内存 )
      • 927820 free (空闲内存 )
      • 4671188 buffers (内核缓存使用)
        ps:以k为单位
    • row5:swap交换分区信息
      KiB Swap: 4063228 total, 2933688 free, 1129540 used. 5153128 avail Mem

      • 4063228 total (交换分区总量 )
      • 1129540 used (已使用交换分区内存 )
      • 2933688 free (空闲交换分区 )
      • 5153128 cached (缓冲交换区 )

    在这里插入图片描述

    系统进程信息

    • PID :进程id
    • USER :进程所有者的用户名
    • PR :进程优先级
    • NI :nice值。负值表示高优先级,正值表示低优先级
    • VIRT :进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
    • RES :进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
    • SHR :共享内存大小,单位kb
    • S :进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程
    • %CPU :上次更新到现在的CPU时间占用百分比
    • %MEM :进程使用的物理内存百分比
    • TIME+ :进程使用的CPU时间总计,单位1/100秒
    • COMMAND :进程名称[命令名/命令行]

    在这里插入图片描述

    按“1”键,可打开或关闭显示详细CPU统计信息:
    在这里插入图片描述
    按字母“B”键,可打开或关闭当前进程的显示效果
    在这里插入图片描述

    4、df命令使用

    df命令用于显示磁盘分区上的可使用的磁盘空间。默认显示单位为KB。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。

    语法:df(选项)(参数)

    选项:

    -a或–all:包含全部的文件系统;
    –block-size=<区块大小>:以指定的区块大小来显示区块数目;
    -h或–human-readable:以可读性较高的方式来显示信息;
    -H或–si:与-h参数相同,但在计算时是以1000 Bytes为换算单位而非1024 Bytes;
    -i或–inodes:显示inode的信息;
    -k或–kilobytes:指定区块大小为1024字节;
    -l或–local:仅显示本地端的文件系统;
    -m或–megabytes:指定区块大小为1048576字节;
    –no-sync:在取得磁盘使用信息前,不要执行sync指令,此为预设值;
    -P或–portability:使用POSIX的输出格式;
    –sync:在取得磁盘使用信息前,先执行sync指令;
    -t<文件系统类型>或–type=<文件系统类型>:仅显示指定文件系统类型的磁盘信息;
    -T或–print-type:显示文件系统的类型;
    -x<文件系统类型>或–exclude-type=<文件系统类型>:不要显示指定文件系统类型的磁盘信息;
    –help:显示帮助;
    –version:显示版本信息。

    参数:

    文件:指定文件系统上的文件。

    比较常用的有:

    • df -a 查看全部的文件系统
    • df -h查看磁盘使用情况
    • df -i 查看inode使用情况

    在这里插入图片描述

    5、ps命令使用

    ps命令用于查看进程统计信息

    常用参数:

    • a:显示当前终端下的所有进程信息,包括其他用户的进程。
    • u:使用以用户为主的格式输出进程信息。
    • x:显示当前用户在所有终端下的进程。
    • -e:显示系统内的所有进程信息。
    • -l:使用长(long)格式显示进程信息。
    • -f:使用完整的(full)格式显示进程信息。

    在使用中可以加上grep命令一起使用,也可以单独使用

    # ps命令单独使用的情况
    ps -elf tomcat
    #结合管道操作和grep命令进行过滤,用于查询某一个进程的信息
    ps -elf | grep tomcat
    

    6、crontab 命令

    crontab 命令,用于定时程序的命令
    -e : 执行文字编辑器来设定时程表,内定的文字编辑器是 VI,如果你想用别的文字编辑器,则请先设定 VISUAL 环境变数来指定使用那个文字编辑器(比如说 setenv VISUAL joe)
    -r : 删除目前的时程表
    -l : 列出目前的时程表

    二、文件操作

    1、tail查看文件

    tail 命令可用于查看文件的内容,语法为

    tail [param] [filename]
    

    其中param可为:

    • -f :循环读取
    • -q :不显示处理信息
    • -v :显示详细的处理信息
    • -c [数目]: 显示的字节数
    • -n [行数]: 显示文件的尾部 n 行内容
    • –pid=PID :与-f合用,表示在进程ID,PID死掉之后结束
    • -q, --quiet, --silent :从不输出给出文件名的首部
    • -s, --sleep-interval=S :与-f合用,表示在每次反复的间隔休眠S秒

    2、查看文件情况

    ll -ah命令,可以用于查看文件情况

    ll -ah
    

    3、文件权限设置

    Linux的文件基本权限有9个,分别是owenr、group、others三种身份各自有自己的r、w和x,比如“rwxrwxrwx”,就表示owener具有r(read 读)、w(write 写)、x(execute 访问)权限,同样group和others同样具有r、w、x权限,可以用xftp查看文件权限

    在这里插入图片描述

    可以使用数字表示权限:

    r->4

    w->2

    x->1

    当文件权限为“rwxrwxrwx”时,分数是:

    owner->4+2+1=7

    group->4+2+1=7

    others->4+2+1=7

    此时文件的权限数字就是777

    然后要给文件file赋权的话,就可以使用Linux命令:

    chmod 777 file
    

    owner、group和others三种身份各自的三个权限,用u、g、o代表三种身份,用a(all)代表所有身份,所以还有下面的Linux命令

    chmod u|g|o|a  =(设置权限)|+(添加权限)|-(减少权限)  r|w|x  文件或者目录
    

    eg:给文件file赋值权限

        chmod u=rwx file
    

    4、文件上传下载

    在不使用xftp等linux工具的情况,可以通过linux命令,sz命令是利用ZModem协议来从Linux服务器传送文件到本地,一次可以传送一个或多个文件。

    • 下载文件
      sz命令发送文件到本地:
    sz filename
    

    在这里插入图片描述
    敲命令之后,直接弹出下载保存窗口页面

    • 上传文件
    rz
    

    敲命令之后,直接弹出上传窗口页面
    在这里插入图片描述

    rz、sz命令需要有如下条件:

    • linux系统
    • root权限
    • lrzsz安装包

    lrzsz安装步骤:

    // 编译安装
    //root 账号登陆后,依次执行以下命令:
    tar zxvf lrzsz-0.12.20.tar.gz
    cd lrzsz-0.12.20
    ./configure
    make
    make install
    //上面安装过程默认把lsz和lrz安装到了/usr/local/bin/目录下,现在我们并不能直接使用,下面创建软链接,并命名为rz/sz:
    cd /usr/bin
    ln -s /usr/local/bin/lrz rz
    ln -s /usr/local/bin/lsz sz
    

    Centos可以直接这样安装

    yum install lrzsz -y
    

    5、压缩文件解压

    linux解压zip压缩文件可以用unzip命令,如果没安装,可以先安装

    yum install -y unzip zip
    

    语法一般为:unzip [选项] [压缩文件名]

    • -c 将解压缩的结果显示到屏幕上,并对字符做适当的转换。
    • -f 更新现有的文件。
    • -l 显示压缩文件内所包含的文件。
    • -p 与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任何的转换。
    • -t 检查压缩文件是否正确。
    • -u 与-f参数类似,但是除了更新现有的文件外,也会将压缩文件中的其他文件解压缩到目录中。
    • -v 执行是时显示详细的信息。
    • -z 仅显示压缩文件的备注文字。
    • -a 对文本文件进行必要的字符转换。
    • -b 不要对文本文件进行字符转换。
    • -C 压缩文件中的文件名称区分大小写。
    • -j 不处理压缩文件中原有的目录路径。
    • -L 将压缩文件中的全部文件名改为小写。
    • -M 将输出结果送到more程序处理。
    • -n 解压缩时不要覆盖原有的文件。
    • -o 不必先询问用户,unzip执行后覆盖原有文件。
    • -P<密码> 使用zip的密码选项。
    • -q 执行时不显示任何信息。
    • -s 将文件名中的空白字符转换为底线字符。
    • -V 保留VMS的文件版本信息。
    • -X 解压缩时同时回存文件原来的UID/GID。
    • [.zip文件] 指定.zip压缩文件。
    • [文件] 指定要处理.zip压缩文件中的哪些文件。
    • -d<目录> 指定文件解压缩后所要存储的目录。
    • -x<文件> 指定不要处理.zip压缩文件中的哪些文件。
    • -Z unzip -Z等于执行zipinfo指令。

    6、查看文件夹大小

    du [选项][文件]
    

    -a或-all 显示目录中个别文件的大小。
    -b或-bytes 显示目录或文件大小时,以byte为单位。
    -c或–total 除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和。
    -k或–kilobytes 以KB(1024bytes)为单位输出。
    -m或–megabytes 以MB为单位输出。
    -s或–summarize 仅显示总计,只列出最后加总的值。
    -h或–human-readable 以K,M,G为单位,提高信息的可读性。
    -x或–one-file-xystem 以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过。
    -L<符号链接>或–dereference<符号链接> 显示选项中所指定符号链接的源文件大小。
    -S或–separate-dirs 显示个别目录的大小时,并不含其子目录的大小。
    -X<文件>或–exclude-from=<文件> 在<文件>指定目录或文件。
    –exclude=<目录或文件> 略过指定的目录或文件。
    -D或–dereference-args 显示指定符号链接的源文件大小。
    -H或–si 与-h参数相同,但是K,M,G是以1000为换算单位。
    -l或–count-links 重复计算硬件链接的文件。

    常用命令:

    du -sh /opt
    

    7、文件数据排序

    sort命令可以用于文件数据排序,然后将排序结果打印出来。

    语法:

    sort [选项] [文件]
    

    常用选项:

    选项含义
    -b忽略每行前面开始出的空格字符
    -c检查文件是否已经按照顺序排序
    -d排序时,处理英文字母、数字及空格字符外,忽略其他的字符
    -f排序时,将小写字母视为大写字母
    -i排序时,除了040至176之间的ASCII字符外,忽略其他的字符
    -m将几个排序号的文件进行合并
    -M将前面3个字母依照月份的缩写进行排序
    -n依照数值的大小排序
    -o<输出文件> 将排序后的结果存入制定的文件
    -r以相反的顺序来排序
    -t<分隔字符> 指定排序时所用的栏位分隔字符
    -k指定需要排序的栏位

    8、去除文件重复行

    使用uniq这个命令只能去除连续的的重复行。所以需要结合sort命令使用,先sort排序,然后uniq去除重复的

    语法:

    uniq [选项] [文件]
    
    选项含义
    -c打印每行在文本中重复出现的次数
    -d只显示有重复的纪录,每个重复纪录只出现一次
    -u只显示没有重复的纪录

    三、网络通信

    1、netstat监控命令

    netstat命令是用于监控进出网络的包和网络接口统计的命令行工具

    语法:netstat [param]
    

    param参数可以为:

    • -h : 查看帮助
    • -r : 显示路由表
    • -i : 查看网络接口

    2、linux重启网络

    设置了linux网络,需要重启网络,可以用命令:

    service network restart 
    

    3、SELinux简介

    SELinux全称是 Security-Enhanced Linux,它是由美国国家安全局(NSA)贡献的,它为 Linux 内核子系统引入了一个健壮的强制控制访问Mandatory Access Control架构。详情可以参考SELinux 入门SELINUX工作原理

    其实SELinux的功能也就是类似于防火墙的功能,不过安全相对比较好,ok,所以本博客介绍一下SELinux的使用命令

    查看selinux状态

    getenforce
    

    临时禁用SELINUX(学习用的linux才可以禁用,生产的不建议禁用SELINUX)

    setenforce
    

    永久禁用SELINUX(学习用的linux才可以禁用,生产的不建议禁用SELINUX)

     # 将SELINUX=enforce改成SELINUX=disabled
     vi /etc/selinux/config
    

    4、防火墙设置

    查询linux系统防火墙开启状态

    firewall-cmd --state
    

    临时关闭防火墙(学习用的linux才可以禁用,生产的不建议禁用SELINUX)

    systemctl stop firewalld.service
    

    永久关闭防火墙(学习用的linux才可以禁用,生产的不建议禁用SELINUX)

    systemctl disable firewalld.service
    

    5、CURL命令使用

    curl命令是一个利用URL规则在shell终端命令行下工作的文件传输工具;curl命令作为一款强力工具,curl支持包括HTTP、HTTPS、ftp等众多协议,还支持POST、cookies、认证、从指定偏移处下载部分文件、用户代理字符串、限速、文件大小、进度条等特征;
    在这里插入图片描述
    语法:语法格式:curl [参数] [网址]

    5.1 查看curl帮助

    • 查看命令参数
      curl的参数很多,可以用命令curl --help查看:
    [root@localhost ~]# curl --help
    

    国内翻译过来的curl文档:curl参数介绍

    5.2 查看curl手册

    • 查看详细使用
      也可以使用curl --manual查看基本用法例子:
      在这里插入图片描述

    5.3 提取指定网页

    • 查看网页源码
      语法:curl uri
    [root@localhost ~]# curl www.baidu.com
    <!DOCTYPE html>
    <!--STATUS OK--><html> <head><meta http-equiv=content-type content=text/html;charset=utf-8><meta http-equiv=X-UA-Compatible content=IE=Edge><meta content=always name=referrer><link rel=stylesheet type=text/css href=http://s1.bdstatic.com/r/www/cache/bdorz/baidu.min.css><title>百度一下,你就知道</title></head> <body link=#0000cc> <div id=wrapper> <div id=head> <div class=head_wrapper> <div class=s_form> <div class=s_form_wrapper> <div id=lg> <img hidefocus=true src=//www.baidu.com/img/bd_logo1.png width=270 height=129> </div> <form id=form name=f action=//www.baidu.com/s class=fm> <input type=hidden name=bdorz_come value=1> <input type=hidden name=ie value=utf-8> <input type=hidden name=f value=8> <input type=hidden name=rsv_bp value=1> <input type=hidden name=rsv_idx value=1> <input type=hidden name=tn value=baidu><span class="bg s_ipt_wr"><input id=kw name=wd class=s_ipt value maxlength=255 autocomplete=off autofocus></span><span class="bg s_btn_wr"><input type=submit id=su value=百度一下 class="bg s_btn"></span> </form> </div> </div> <div id=u1> <a href=http://news.baidu.com name=tj_trnews class=mnav>新闻</a> <a href=http://www.hao123.com name=tj_trhao123 class=mnav>hao123</a> <a href=http://map.baidu.com name=tj_trmap class=mnav>地图</a> <a href=http://v.baidu.com name=tj_trvideo class=mnav>视频</a> <a href=http://tieba.baidu.com name=tj_trtieba class=mnav>贴吧</a> <noscript> <a href=http://www.baidu.com/bdorz/login.gif?login&amp;tpl=mn&amp;u=http%3A%2F%2Fwww.baidu.com%2f%3fbdorz_come%3d1 name=tj_login class=lb>登录</a> </noscript> <script>document.write('<a href="http://www.baidu.com/bdorz/login.gif?login&tpl=mn&u='+ encodeURIComponent(window.location.href+ (window.location.search === "" ? "?" : "&")+ "bdorz_come=1")+ '" name="tj_login" class="lb">登录</a>');</script> <a href=//www.baidu.com/more/ name=tj_briicon class=bri style="display: block;">更多产品</a> </div> </div> </div> <div id=ftCon> <div id=ftConw> <p id=lh> <a href=http://home.baidu.com>关于百度</a> <a href=http://ir.baidu.com>About Baidu</a> </p> <p id=cp>&copy;2017&nbsp;Baidu&nbsp;<a href=http://www.baidu.com/duty/>使用百度前必读</a>&nbsp; <a href=http://jianyi.baidu.com/ class=cp-feedback>意见反馈</a>&nbsp;京ICP证030173号&nbsp; <img src=//www.baidu.com/img/gs.gif> </p> </div> </div> </div> </body> </html>
    
    
    • 显示头信息
    curl -i https://www.baidu.com
    

    打印信息:

    [root@localhost ~]# curl -i https://www.baiud.com
    curl: (7) Failed connect to www.baiud.com:443; Connection refused
    [root@localhost ~]# curl -i https://www.baidu.com
    HTTP/1.1 200 OK
    Accept-Ranges: bytes
    Cache-Control: private, no-cache, no-store, proxy-revalidate, no-transform
    Connection: keep-alive
    Content-Length: 2443
    Content-Type: text/html
    Date: Mon, 13 Jul 2020 07:22:02 GMT
    Etag: "588603eb-98b"
    Last-Modified: Mon, 23 Jan 2017 13:23:55 GMT
    Pragma: no-cache
    Server: bfe/1.0.8.18
    Set-Cookie: BDORZ=27315; max-age=86400; domain=.baidu.com; path=/
    ...	
    
    • 显示通信过程
    curl -v www.baidu.com
    
    curl -v www.baidu.com
    * About to connect() to www.baidu.com port 80 (#0)
    *   Trying 182.61.200.7...
    * Connected to www.baidu.com (182.61.200.7) port 80 (#0)
    > GET / HTTP/1.1
    > User-Agent: curl/7.29.0
    > Host: www.baidu.com
    > Accept: */*
    > 
    < HTTP/1.1 200 OK
    < Accept-Ranges: bytes
    < Cache-Control: private, no-cache, no-store, proxy-revalidate, no-transform
    < Connection: keep-alive
    < Content-Length: 2381
    < Content-Type: text/html
    < Date: Mon, 13 Jul 2020 07:24:46 GMT
    < Etag: "588604c8-94d"
    < Last-Modified: Mon, 23 Jan 2017 13:27:36 GMT
    < Pragma: no-cache
    < Server: bfe/1.0.8.18
    < Set-Cookie: BDORZ=27315; max-age=86400; domain=.baidu.com; path=/
    < 
    <!DOCTYPE html>
    ...
    
    • 查看议定书
    [root@localhost ~]# curl --trace-ascii output.txt https://www.baidu.com
    
    

    在这里插入图片描述

    在这里插入图片描述

    • 查看时间
    curl --trace-ascii output.txt --trace-time https://www.baidu.com
    

    在这里插入图片描述

    5.4 用curl进行认证

    • referer设置
      referer参数描述了一个网页的来源,可以按F12调试模式,查看:
      在这里插入图片描述
      访问百度时候,加上referer为csdn:
    [root@localhost ~]# curl --referer https://blog.csdn.net https://www.baidu.com
    
    • 用户代理设置
      用户代理常被用于兼容ie,有时,您会看到获取带有curl的页面不会返回与使用浏览器获取页面时看到的页面相同的页面,这时候可以设置用户代理:
    curl www.baidu.com --user-agent "Mozilla/5.0"
    curl www.baidu.com -A "Mozilla/5.0"
    

    5.5 curl文件操作

    • 保存文件
      语法:curl -o filename uri
    [root@localhost ~]# curl -o baidu.html www.baidu.com
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                     Dload  Upload   Total   Spent    Left  Speed
    100  2381  100  2381    0     0  22761      0 --:--:-- --:--:-- --:--:-- 22894
    
    

    在这里插入图片描述

    • 文件下载
      语法:curl uri filename --silent|progress
      • –silent:不显示进度条
      • –progress:显示进度条
    [root@localhost ~]# curl https://avatar.csdnimg.cn/3/5/E/1_meituantech_1564971608.jpg -omeituan.jpg --progress
    ######################################################################## 100.0%
    
    

    在这里插入图片描述

    • 上传文件
      语法:$ curl --form upload=@localfilename --form press=OK [URL]
    [root@localhost ~]# curl --form upload=@baidu.html --form press=OK url
    
    

    5.6 设置cookie

    设置cookie,可以用命令--cookie

    -c cookie-file可以保存服务器返回的cookie到文件,-b cookie-file可以使用这个文件作为cookie信息,进行后续的请求。

    $ curl -c cookies http://example.com
    $ curl -b cookies http://example.com
    
    [root@localhost ~]# curl -c "name=cookiename" www.baidu.com
    
    

    在这里插入图片描述

    也可以用–cookie-jar指定cookie文件

    [root@localhost ~]# curl www.baidu.com --cookie-jar cookie_file
    
    

    在这里插入图片描述
    指定可下载的最大文件大小,可以用命令–limit-rate

    [root@localhost ~]# curl www.baidu.com --limit-rate 50k
    
    

    5.7 RESTFul API

    ps:-H指定请求header,-d指定参数

    • CURL POST:
    [root@localhost ~]# curl -H "Content-Type:application/json" -X POST localhost:9200/company/employees/1 -d '{"id" :1,"name":"admin","password":"123"}'
    
    
    • CURL GET:
    [root@localhost ~]# curl -X GET localhost:9200/company/employees/1?pretty=true
    
    • CURL DELETE:
    [root@localhost ~]# curl -X DELETE localhost:9200/company/employees/1
    
    • CURL PUT:
    curl -H "Content-Type:application/json" -X PUT localhost:9200/company/employees/1 -d '{"id" :1,"name":"admin","password":"111"}'
    

    curl默认是GET方式请求url的,要调POST等接口,必须加上-X参数指定

    比较详细的可以参考:

    四、系统管理

    1、查看内核版本

    uname命令用于查看内核版本
    在这里插入图片描述

    2、查看linux系统ip

    查看linux的ip地址:可以用命令

     ip addr
    

    3、查看ip是否被占用

    lsof -i:8080
    

    4、uptime命令使用

    uptime命令能够打印系统总共运行了多长时间和系统的平均负载。uptime命令可以显示的信息显示依次为:现在时间、系统已经运行了多长时间、目前有多少登陆用户、系统在过去的1分钟、5分钟和15分钟内的平均负载。

    用help参数参数

    [shared@localhost~]$ uptime --help
    
    Usage:
     uptime [options]
    
    Options:
     -p, --pretty   show uptime in pretty format 
     -h, --help     display this help and exit 
     -s, --since    system up since 
     -V, --version  output version information and exit
    
    For more details see uptime(1).
    [shared@localhost~]$ uptime -V
    uptime from procps-ng 3.3.10
    
    

    Options:

    • -p, --pretty show uptime in pretty format //比较美观的打印
    • -h, --help display this help and exit // 查看参数帮助
    • -s, --since system up since // 查看系统当前时间
    • -V, --version output version information and exit // 查看版本

    在这里插入图片描述

    5、telnet命令使用

    不管在window还是linux系统要校验某台服务器是否可以ping通,都可以使用命令,如果要加上断口的,linux可以使用telnet命令
    语法:telnet ip port

    telnet 127.0.0.1 8080
    

    6、查看系统当前登录用户

    可以使用w命令:

    [root@localhost ~]# w 
    

    下面列举主要的

    选项含义
    -h不显示输出信息的标题
    -l用长格式输出
    -s用短格式输出,不显示登陆时间,JCPU 和 PCPU 时间
    -V显示版本信息

    只显示某个用户的信息

    [root@localhost ~]# w [选项] [用户名]
    

    ps:切换用户可以使用命令su root进行系统用户切换

    附录:

    微信打赏
    在这里插入图片描述
    技术博客公众号
    在这里插入图片描述
    QQ群:1129337987

    展开全文
  • kali Linux常用命令

    2018-02-11 18:21:16
    这是一些常用命令
  • linux常用命令的xmind,不知道怎么可以免费共享大家 作为自己的记录。
  • 主要介绍了【LinuxLinux中常用操作命令总结,Linux,免费开源,多用户多任务系统。本文总结了一些实用常用命令,需要的朋友可以参考下。
  • sip 对讲中,关于freeswich在linux中使用说明手册及常用命令整理 1. sofia status profile internal 2. sofia status profile internal reg
  • 入门学习Linux常用必会60个命令实例详解doc/txt

    千次下载 热门讨论 2011-06-09 00:08:45
    入门学习Linux常用必会60个命令实例详解 Linux必学的60个命令 Linux提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作、文件存取、目录操作、进程管理、文件权限设定等。所以,在Linux系统上工作离不...
  • Linux GCC常用命令.docx

    2018-10-23 08:18:44
    Linux GCC常用命令.docx Linux GCC常用命令参数介绍。
  • 作为系统维护员、网络管员必须掌握Linux命令,本文的60个命令可以让你更好的远程操作Linux服务器,希望能帮到你

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 577,617
精华内容 231,046
关键字:

linux20个常用命令

linux 订阅