shell精讲

shell精讲

shell变量

       定义变量时,变量名不加美元符号($,PHP语言中变量需要)

注意,变量名和等号之间不能有空格,这可能和你熟悉的所有编程语言都不一样。同时,变量名的命名须遵循如下规则:

  • 首个字符必须为字母(a-z,A-Z)。

  • 中间不能有空格,可以使用下划线(_)。

  • 不能使用标点符号。

  • 不能使用bash里的关键字(可用help命令查看保留关键字)。

使用变量

       1、使用一个定义过的变量,只要在变量名前面加美元符号即可

       2、变量名外面的花括号是可选的,加不加都行,加花括号是为了帮助解释器识别变量的边界

       3、已定义的变量,可以被重新定义

只读变量

      使用 readonly 命令可以将变量定义为只读变量,只读变量的值不能被改变

shell精讲image.pngimage.png

删除变量

       使用 unset 命令可以删除变量。

       变量被删除后不能再次使用。unset 命令不能删除只读变量。

变量类型

       运行shell时,会同时存在三种变量:

  • 局部变量 局部变量在脚本或命令中定义,仅在当前shell实例中有效,其他shell启动的程序不能访问局部变量。

  • 环境变量所有的程序,包括shell启动的程序,都能访问环境变量,有些程序需要环境变量来保证其正常运行。必要的时候shell脚本也可以定义环境变量。

  • shell变量 shell变量是由shell程序设置的特殊变量。shell变量中有一部分是环境变量,有一部分是局部变量,这些变量保证了shell的正常运行

shell字符串

       字符串是shell编程中最常用最有用的数据类型(除了数字和字符串,也没啥其它类型好用了),字符串可以用单引号,也可以用双引号,也可以不用引号。

1、单引号

单引号字符串的限制:

  • 单引号里的任何字符都会原样输出,单引号字符串中的变量是无效的;

  • 单引号字串中不能出现单引号(对单引号使用转义符后也不行)。

2、双引号

双引号的优点:

  • 双引号里可以有变量

  • 双引号里可以出现转义字符

shell传递参数

我们可以在执行 Shell 脚本时,向脚本传递参数,脚本内获取参数的格式为:$nn 代表一个数字,1 为执行脚本的第一个参数,2 为执行脚本的第二个参数,以此类推…… 

原创文章,作者:xiaoqiang512,如若转载,请注明出处:http://www.178linux.com/37896

(0)
xiaoqiang512xiaoqiang512
上一篇 2016-08-21 20:45
下一篇 2016-08-21 20:45

相关推荐

  • vi编辑器

       vim编辑器是众多文件编辑软件中比较好的一个,也是使用最多 ,功能最强大的,提供了图形化界面。    Vi:类unix系统中默认的文本编辑器    Vim:vi编辑器的增强版本,习惯上也称vi。    作用:创建或修改文本文件,维护linux系统的各种配置文件 vim的使用…

    Linux干货 2016-08-15
  • yum更多用法及源码编译安装apache和当天作业

    一、yum的更多用法 上篇文章介绍了yum的基础用法及yum源的基本配置,除此之外yum还有更多的用法,以下将继续介绍yum的使用方法。 1、yum-config-manager工具,该工具可以自动生成yum的repo文件,而不需要手动创建编写,使用方法如下: 用法:yum-config-manager [options] [section] -add-re…

    Linux干货 2016-08-24
  • N22-第十周作业

    第十周    1、请详细描述CentOS系统的启动流程(详细到每个过程系统做了哪些事情)    POST–>BootSequence(BOIS)–>BootLoader(MBR)–>Kernel(ramfs或者ramdisk)–&gt…

    Linux干货 2016-11-07
  • Nginx

    Nginx简介     Nginx(”engine x”)是俄罗斯人Igor Sysoev(伊戈尔.塞索耶夫)编写的一款高性能的HTTP和反向代理服务器。Nginx能够选择高效的epoll、Kqueue、eventport作为网络I/O模型,在高连接并发的情况下,Nginx是Apache服务器不错的替代品,它能够支持高…

    2017-05-07
  • 文件的权限小结

    主要是setfacl 和chown的总结

    Linux干货 2017-11-27
  • 正则表达式

    Regual Expression 由一类特殊字符及文本字符所编写的模式,其中有些字符不表示字面意义,而是用于控制或通配的功能 分类 REGEXP:由一类特殊字符及文本字符所编写的模式,其中有些字符(元字符)不表示字符字面意义,而表示控制或通配的功能 程序支持:grep, vim, less,nginx等 分两类: 基本正则表达式:BRE 扩展正则表达式:E…

    Linux干货 2016-08-07