文档章节

shell学习总结7

心中的理想乡
 心中的理想乡
发布于 2017/02/25 21:27
字数 1090
阅读 6
收藏 0

今天第二次总结这个,感觉下午的时光总是很安逸,静静感受着阳光,可能这也是广东气候独有的恩赐。总是让我想起当年本科那几年,尤其是大一与伙伴们相聚的时光。我记得那天也是下午,同样冬天,同样是阳光灿烂,我们逛了一天累了,在九栋楼下聚集。后来王堃说,我们大二之后关系肯定会淡。后来就真的如此了。有时候自己是怅惘的,因为怀念,因为叹息吧。这也没办法,是大家共同的选择。如果有机会,我说的大家都能看到的话,我想说:大家过的好吗?我想念你们了。我一直怀念当初一起的时光了。纪成没变,还在这里,只不过纪成不会表达罢了。
等下要回深圳,大约六点多出发吧,现在来总结总结。接下来总结的章节就是真正的shell脚本编程的内容。通读下来我一直觉得shell脚本的灵活性,远远的超出我的想象。今天先来个初步的章节吧。
1、基本的运行的脚本命令开头:
#!/bin/bash
data
who
注意:脚本中命令可以使用分号进行分隔,但是同样可是使用在不同行列出不同命令的方式,让系统顺序执行

2、echo命令几种用法:
        echo string
        echo 'string"string"'
        echo "string'string'" 不同引号进行包含
        echo -n 'string' 这种可以包中显示出字符之后不换行

3、环境变量与用户变量:
        变量的引用,例如:echo $HOME
        用户变量的定义:var1=10
                        var2=-57
                        var3=testing(这种是将var3赋值成testing字符串)
                        var4='string'
        用户变量的定义规则:不超过20个的字母、数字或下划线的文本字符串,区分大小写,等号两边不能有空格
        用户变量的使用:直接使用$符号进行引用,赋值的时候不用使用$符号
        
4、反引号的使用:反引号在shell编程里面主要的作用便是求值,然后将结果赋给变量
            例如:testing=`data`
                  echo "Date and time are:" $testing
            结果:Date and time are: Mon Jan 31 20:23:25 EDT 2011

5、输出重定向:command > outputfile
         举例:date > test6
         结果:会将当前时间写入test6文件当中去

6、输入重定向:command < inputfile
         举例:wc < test6
         结果:2    11      60
         说明:wc命令主要是提供了对文本中的数据计数,主要包含三个方面:文本的行数、文本的词数、文本的字节数
   内联输入重定向:使用<<符号代替<
            说明:内联重定向主要不是在文件中获取输入的数据,而是从命令行中获取,不过开始于结束的标志位必须使用一样的
            举例:wc << EOF
                    >test string 1
                    >test string 2
                    >test string 3
                    >EOF
            结果:3    9    42
7、管道: rpm -qa | sort | more

8、执行数学运算:
    (1)使用expr命令:expr 1+5
        要是使用*进行乘法运算的时候,要使用:\*
    (2)使用[]进行数学运算:var1=$[1+5]
        如果是浮点数运算是不行的,这些都只支持整数运算
    (3)浮点数运算解决方案:使用bc计算器
                     举例:(在shell脚本中)
                             #!/bin/bash
                             var1=`echo "scale=4;3.44 / 5" | bc`
                             echo The answer is $var1
    (4)使用bc运算器解决大量运算问题:主要思路是使用内联重定向来实现
                                举例:(在shell脚本中)
                                          #!/bin/bash
                                          var1=10.12
                                          var2=23.45
                                          var3=45.76
                                          var4=23.55

                                          var5=`bc << EOF
                                          scale=4
                                          a1=($var1 * $var2)
                                          b1=($var3 * $var4)
                                          a1+b1
                                          EOF
                                          `
                                          echo The final answer for this mess is $var5
9、退出脚本
    (1)查看退出状态码:退出状态码是在一个命令运行结束的时候就马上赋值给$?变量的
    (2)查看:echo $?
    (3)说明:一个命令如果是正常退出的话,状态码是0,如果是错误退出的话,状态码会是一个正数值(1~255),特殊状态码查看219页表10-2
     (4)使用exit改变状态码:在脚本结束的时候可以直接(exit number)来指定一个状态码,如果有超过255的状态码,系统会除256取模来确定最终的状态码

© 著作权归作者所有

共有 人打赏支持
心中的理想乡
粉丝 18
博文 75
码字总数 101203
作品 0
深圳
程序员
私信 提问
单引号、双引号和不加引号区别

把内容输出出来,可能不会将含有空格的 说一下单引号、双引号和不加引号区别 总结说明: 单引号: 可以说是所见即所得:即将单引号内的内容原样输出,或者描述为单引号里面看到的是什么就会输...

大凯哥517
2017/05/05
0
0
运维老鸟分享-学好Linux技术大绝招

随着互联网的飞速发展,越来越多的人开始学习 Linux 技术。很多初学者面对 Linux 技术的海洋无从下手,近 1 0年一线互联网运维老鸟为菜鸟总结了学好 Linux 技能的大绝招: 1、基于 VMware 虚...

wgkgood
2017/06/16
0
0
2016个人计划

================2015总结============================ 算完成了吧 1:找个女朋友 。。。 未完成 2:养好身体 未完成 未完成 3:深入了解java基础,看看jdk1.6,1.7的新特性,了解多线程,高...

有种下班别走
2016/02/16
6
0
Shell脚本易犯的错

shell脚本的易犯错误 1. for i in x y z : 这句是以空格作为分隔符的,当我们的$n中包含空格的话,就会有错误 如 for i in ,这句 ls *.mp3执行后如果有空格就gg了 直接 for i in *.mp3 就好...

476069017
2016/09/18
0
0
1017学习总结4天,心急没用,专。类和实例

1、学习4节,学习4.5小时 2、仰卧起坐150 100% 3、知乎 0 今日累计学习3小时20分钟 6:40—7:20 8:10—8:50(其中25分钟在写总结) 10:20—1:00(一直在学习类和实例,封装,方法) 自己的心态一直...

夜希辰
10/18
0
0

没有更多内容

加载失败,请刷新页面

加载更多

deepin中配置robot framework环境

本文永久更新地址:https://my.oschina.net/bysu/blog/2989005 【若要到岸,请摇船:开源中国 不最醉不龟归】 1.在终端中输入pip,回车,如果提示没有该命令,则先安转pip sudo apt-get inst...

不最醉不龟归
19分钟前
2
0
OSChina 周日乱弹 —— 钱不还,我就当你人不在了

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @莱布妮子 :分享Bigleaf的单曲《小鹿》 《小鹿》- Bigleaf 手机党少年们想听歌,请使劲儿戳(这里) 周日在家做什么? 做手工呀, @poorfis...

小小编辑
今天
85
3
EOS docker开发环境

使用eos docker镜像是部署本地EOS开发环境的最轻松愉快的方法。使用官方提供的eos docker镜像,你可以快速建立一个eos开发环境,可以迅速启动开发节点和钱包服务器、创建账户、编写智能合约....

汇智网教程
今天
20
0
《唐史原来超有趣》的读后感优秀范文3700字

《唐史原来超有趣》的读后感优秀范文3700字: 作者:花若离。我今天分享的内容《唐史原来超有趣》这本书的读后感,我将这本书看了一遍之后就束之高阁了,不过里面的内容一直在在脑海中回放,...

原创小博客
今天
29
0
IC-CAD Methodology知识图谱

CAD (Computer Aided Design),计算机辅助设计,指利用计算机及其图形设备帮助设计人员进行设计工作,这个定义同样可以用来近似描述IC公司CAD工程师这个岗位的工作。 早期IC公司的CAD岗位最初...

李艳青1987
今天
35
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部