zoukankan      html  css  js  c++  java
  • 【Linux从零开始】:7.学习Bash与Shell Script(2)

       一.路径与命令的的查找顺序                    

      1.以相对/绝对路径执行命令,例如"/binls"或"./ls";

      2.由alias重命名中内容来查找执行命令;

      3.由bash内置的命令来执行;

      4.通过$PATH变量中所定义的路径顺序找到第一个命令来执行。

       二.自定义自己的bash登陆欢迎界面信息:            

      /etc/issue(登陆界面), /etc/issue.net(telnet的登陆界面) , /etc/motd/(登陆路成功后用户取得的信息)

      执行 cat /etc/issue命令显示如当前的设置:

      issue内的各代码意义
      \d   本地端时间的日期
      \l 显示第几个终端机借口
      \m 显示硬件的等级(i386/i486/i686)
      \n 显示主机的网络名称
      \o 显示domain name
      \r 操作系统版本(相当于uname -r)
      \t 本地端时间
      \s 操作系统名称
      \v 操作系统版本

       三.数据流重定向:                        

      1.标准输入输出的重定向:<输入方   >输出方
        cat命令 : cat filename表示读取文件,也就是从文件输出数据并输出到屏幕上
              cat从键盘读取数据,并且输出到屏幕
                cat > filename从键盘输入,并且输出到文件中(会无条件的覆盖已有的文件)
            以 ctrl + d 来结束输入
          2.防止覆盖已有的文件:
             启用该设置:set -o noclobber
             禁用该设置:set +o noclobber
            使用追加标准输出:可以向某个文件的末尾添加新的内容
              cat filename1 >> filename2
           3.使数据消失,同时不改变文件的权限:
            将数据重定向至 /dev/null
            eg: cat /dev/null > filename 将该文件内容清空

       4.代码输出:

        标准输入(stdin):代码为0,使用<或者<<

        标准输出(stdout):代码为1,使用>或者>>

        标准错误输出(stderr):代码为2,使用2>或者2>>  

       5.tee:双向重定向命令

           -a 以累加的形式将数据输入一个文件

       6.命令执行的判断依据: ; , && || 

        ;不考虑相关性连续执行命令

        $?(命令回传码)与&&(逻辑与运算)或||(逻辑或运算)

     

       四.管道(Pipe)                        

      1.选取命令:

        cut:常用参数

        -d'分隔字符'  -f fields

        -c 字符范围

      eg:  cut ' ; ' -f 5   显示以;为分隔字符的第5个数据(分隔符必须是单个字符)

         cut ' ; ' -f 3,5

         cut -c 12- 若数据分行显示,输出第12个字符以后的数据

       2.字符转换命令:
            tr: -d 删除其中的某个字符串  
                  eg:  tr '[a-z]' '[A-Z]' 将小写替换成大写
                tr -d ';' 删除;符号
           3.文件粘贴连接命令paste:

          paste file1 file2
               直接将2个文件相同的行粘贴在一起(以TAB分隔)
           4.join: [-ti12] file1 file2 
               -t 如果相应行之前的文件内容相同以分隔符链接 Eg: join -t ':' file1 file2
               -i 忽略大小写
             使用join前最好对文件进行sort

         5. split:切割文件命令
                -b 切割成的文件大小,可加单位b k m
                -l 以行数来进行切割
               eg: split -b 300k filename newfile前导名

     

  • 相关阅读:
    岁月
    唯美励志古风
    活着
    走进华夏统一
    使用Fiddler测试WebApi接口
    深入了解正则表达式
    Linux 学习_ssh(secure shell)
    PHP使用mysql扩展操作数据库
    给自己的网站加点情趣,常用的javaScript效果
    三层架构的基础知识
  • 原文地址:https://www.cnblogs.com/VortexPiggy/p/2445528.html
Copyright © 2011-2022 走看看