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

      1,cd命令

         作用:切换当前目录,它的参数切换的路劲,可以是相对路劲,也可以是绝对路劲.  

        用法:   

    1  cd /root/Docements    #切换当/root/Docements,绝对路劲
    2  cd ./path             #切换到当前目录的path目录,相对路劲,“.”表示当前目录.
    3  cd ../path            #切换到上层目录的path,“..”表示上层目录

      2,ls命令

        作用:查看文件与目录,list之意。它的参数如下  

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

      

      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,cut命令

      作用:cut是将文本按列进行切分的小工具

      用法:cut -f 2,3 filename  

      实例:

        

    cut -f FIELD_LIST filename    提取第一个列
    cut -f 2,3 filenme  显示第2列第3列
    cut -f3 --complement student_data.txt 打印除第3列以外的所有列
    
    -b 表示字节
    -c表示字符
    -f表示定义字段
    cut -c1-5 range_filed.txt  打印第1个到第5个字符

      5,sed命令入门

      替换给定的文本的字符串:sed "s/pattern/replace_string/" file 或者 cat file | sed 's/pattern/replace_string'

      使用-i可以替换结果应用于源文件:sed -i "s/pattern/replace_string/" file  

      

      sed '/pattern/d'会移除匹配样式的行   移除空白行:sed '/^$/d' file  

      

      用&表示匹配到的字符串

      echo 'this is an example' | sed 's/w+/(&)/g' 

      -->(this) (is) (an) (example)

      

      子串匹配标记([0-9])

      echo "this is digit 7 in a number" | sed 's/digest ([0-9])/1/'

      this is 7 in a number

      

      组合多个表达式:sed "expression;expression"

      

      6,awk命令入门

      awk基本脚本如下:

        awk 'BEGIN{print "start"} pattern{commands} END{print "end"} file

        工作方式如下:

        1,执行BEGIN中的语句。

        2,从文件或stdin中读取一行,然后执行pattern{commands}.重复这个过程知道文件全部读取完毕

        3,当读至输入流末尾时,执行END{commands}语句块

        echo -e "line1 line2" |awk 'BEGIN{print "Start"} {print} END {print "End"}'

        输出:

          Start

          line1

          line2

          End

      awk的特殊变量

        NR:表示记录数量,在执行过程中对应于当前行号

        NF:表示字段数量,在执行过程中对应于当前执行行的字段数

        $0,这个变量包含执行过程中当前的文本内容

        $1,这个变量包含第一个字段的文本内容

        $2,这个变量包含第二个字段的文本内容

      再看一下awk的一些基本用法:

        打印每一行的第2和第3个字段:

        awk '{print $3,$2}' file

        统计文件中的行数:

        awk 'END{print NR}' file

           累加:

        seq 5 |awk 'BEGIN{sum=0;print "Summation:"} {print $1"+";sum+=$1} END{print "="sum}'  

        Summation:

        1+

        2+

        3+

        4+

        5+

        =15

      借助选项-v,将外部变量值传递给awk:VAR=1000;echo |awk -v VARIABLE=$VAR'{print VARIABLE}'

      打印不同行或样式之间的文本

        要打印从M行到N行范围的所有文本

          awk 'NR==M,NR==N' filename

        要打印处于start_pattern与end_pattern之间的文本

          awk '/start_pattern/,/end_pattern/' filename

      

      7,paste按列合并文件

      语法如下:

        paste file1 file2 file3 ...

        

      8,rev命令接受一个文件或stdin作为输入,并逆序打印每一行的内容

        (判断字符串是否为回文)

        string="malayalam"

        if[["$string" == "$(echo $string | rev)"]];

        then

        echo "Palindrome"

        else

        echo "Not palidrome"

         fi

      

      9,grep是在文件中搜索文本的最佳工具.grep会打印出匹配给定样式的文本或者文本行

        打印匹配字符串的文本行以及之后的3行,使用下面的命令:

        grep -A 3 "pattern_string" filename

        打印匹配字符串的文本行以及之前的3行,使用下面的命令:

        grep -B 3 "pattern_string" filename

        打印匹配字符串的文本行以及之后的3行和之后的3行,使用下面的命令:

        grep -C 3 "pattern_string" filename

      

      10,网站下载(wegt,curl)

       1,wegt 

        wget是一个用于文件下载的命令行工具,选项多且用法活

        用wget可以下载网页或者远程文件

        语法:wget URL

        下载多个URL,语法:wegt URL1 URL2 URL3

        wegt在放弃下载之前还会继续进行5次尝试 wegt -t 5 URL

        下载限速:wegt --limit-rate 大小 URL (在命令中用k(千字节)和兆(兆字节)指定速度限制)

        断点续传:wegt -c URL

       2,curl入门

        curl支持包括HTTP,HTTPS,FTP在内的众多协议.它还支持POST,cookie,认证,从指定偏移处下载部分文件,参照页,用户代理字符串,扩展头部,限速,文件大小限制,进度条等特性

        断点续传:curl url/file -C offset

        用curl设置参照页字符串:curl  --referer Referer_URL target_URL

        用curl设置cookie:curl http://example.com --cookie "user=a;pass=b"

        用curl设置用户代理字符串:curl URL --user-agent "Mozilla/5.0"   可以用-H传递多个头部信息:curl -H "Host:www.slynux.org" -H"Accept-;anguage:en" URL

        限定curl可占用带宽:curl url --limit-rate 20k

        指定最大下载量:curl URL --max-filesize bytes

        通过-I或-head只打印头部信息:curl -I http://slynux.org

      

      11,Lynx是一个基于命令行的网页浏览器。它并不会为我们显示一堆原始的HTML代码,而是能够打印出网站的文本版本,这个文本版和我们在浏览器中看到的页面一模一样,

  • 相关阅读:
    反射获取class的Class
    线程礼让yield和线程的强制执行join
    Lambda表达式
    java中的静态代理
    java多线程中的callable接口实现
    java利用线程并行的方法模拟龟兔赛跑
    java中的多线程
    HTTP 协议之请求格式
    java的反射概述
    Tomcat和servlet的关系
  • 原文地址:https://www.cnblogs.com/panhe-xue/p/6606654.html
Copyright © 2011-2022 走看看