shell基础学习总结(二) (r3笔记第72天)

-->关于shell编程之文件比较 可以使用如下的选项来做文件的比较。有了这些选项,文件的比较来说都是游刃有余。 -d file file是否存在并是一个目录 -e file file是否存在 -f file file是否存在并是一个文件 -r file file是否存在并可读 -s file file是否存在并非空 -w file file是否存在并可写 -x file file是否存在并可执行 -O file file是否存在并属当前用户所有 -G file file是否存在并且默认组与当前用户相同 File1 –nt file2 file1是否比file2新 File1 –ot file2 file1是否比file2旧

-->双圆括号 关于双圆括号在shell中的使用,可是相当的广泛。以下的操作都会涉及到双圆括号。 Val ++,++val Val –,--val ! 逻辑求反 ~ 位求反 ** 幂运算 << 左位移 >> 右位移 & 位布尔和 | 位布尔减 && 逻辑和 || 逻辑减 举一个简单的例子来说明。

val1=10;

if (( val1 ** 2 > 90 ))
then
(( val2 = $val1**3 ))
echo $val2
fi

-->shell变成中的case case语句的使用和在其它语言中的编程表达的是一个意思。 都是通过case 语句来把判断条件来逐步细分,得到与之最匹配的选项。case的使用也比较广泛,比如某一个命令可能含有很多的功能,就可以使用case来集多个功能于一身。 Case variable in Parttern1|parttern2 ) commands;; Pattern3) commands;; *)default commands;; esac 举一个使用case的例子。如果通过$USER得到的用户是ora10g或者oracle就输出this is the right user,如果是Testing,就输出this is a test user,如果是其它的用户则输出一段警告。

case $USER in
ora10g | oracle )
    echo 'this is the right user'
    echo 'glad to see you ';;
Testing)
    echo 'this is a test user';;
*)
    echo 'sorry, you are not the expected user';;
esac

->shell编程之函数 对于复杂的shell编程而言,肯定涉及的上下文环境会比较复杂,可能一个单独的shell文件就显得有些单薄了。如果有些功能在其它的脚本中也会涉及到,每次重复写就太无聊了。可以使用函数的功能,直接在使用的使用引用即可。 函数的语法如下。调用的时候也很方便。 function fname() { Statements; } fname() { Statements } fname ; fname arg1 arg2

原文发布于微信公众号 - 杨建荣的学习笔记(jianrong-notes)

原文发表时间:2014-12-02

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏DT乱“码”

jquery中ajax参数说明

jquery中的ajax方法参数总是记不住,这里记录一下。 1.url:  要求为String类型的参数,(默认为当前页地址)发送请求的地址。 2.type:...

2068
来自专栏北京马哥教育

Python 基础语法

Python语言与Perl,C和Java等语言有许多相似之处。但是,也存在一些差异。 在本章中我们将来学习Python的基础语法,让你快速学会Python编程...

3936
来自专栏CaiRui

Bash Shell 小试牛刀

一、终端打印 [root@cai ~]# echo welcome to bash! welcome to bash! [cairui@cai ~]$ echo...

1816
来自专栏大前端_Web

详解ES7的async及webpack配置async

版权声明:本文为吴孔云博客原创文章,转载请注明出处并带上链接,谢谢。 https://blog.csdn.net/wkyseo/articl...

3882
来自专栏逆向技术

异常处理第三讲,SEH(结构化异常处理),异常展开问题

           异常处理第三讲,SEH(结构化异常处理),异常展开问题 不知道昨天有木有小伙伴尝试写一下SEH异常处理的代码.如果没写过,请回去写( :...

22710
来自专栏大内老A

ASP.NET Web API路由系统:路由系统的几个核心类型

虽然ASP.NET Web API框架采用与ASP.NET MVC框架类似的管道式设计,但是ASP.NET Web API管道的核心部分(定义在程序集Syste...

31110
来自专栏运维小白

linux基础(day26)

9.1正则介绍_grep(上) 正则介绍 正则就是一串有规律的字符串 掌握好正则对编写shell脚本帮助交大 各种编程语言中都有正则,原理是一样的 grep/e...

24310
来自专栏十月梦想

Promise对象、传参以及错误处理

在大部分情况下我们的程序都是在进行异步操作,需要嵌套多次callback,使得程序变得复杂!ES6中提供了Promise对象,将非阻塞I/O变为阻塞I/O,把异...

4761
来自专栏开发与安全

《鸟哥的linux私房菜》基本命令笔记

1.以前没注意过的,略写的命令option后面只能空格后加参数,而标准option即可以空格也可以等号后跟着参数,如date命令,date -r filenam...

2246
来自专栏日常分享

Java 访问权限控制 小结

总所周知,Java提供了访问权限修饰词,以供类库开发人员向客户端程序员指明哪些是可用的,哪些是不可用的。

1681

扫码关注云+社区

领取腾讯云代金券