(一)Linux Shell编程——简介、变量、字符串、数组

1. Shell简介

1.1 Shell出现背景

Shell 既是一种脚本编程语言,也是一个连接内核和用户的软件。

对于图形界面,用户点击某个图标就能启动某个程序;对于命令行,用户输入某个程序的名字(可以看做一个命令)就能启动某个程序。这两者的基本过程都是类似的,都需要查找程序在硬盘上的安装位置,然后将它们加载到内存运行。然而,真正能够控制计算机硬件(CPU、内存、显示器等)的只有操作系统内核(Kernel),图形界面和命令行只是架设在用户和内核之间的一座桥梁。

由于安全、复杂、繁琐等原因,用户不能直接接触内核(也没有必要),需要另外再开发一个程序,让用户直接使用这个程序;该程序的作用就是接收用户的操作(点击图标、输入命令),并进行简单的处理,然后再传递给内核。如此一来,用户和内核之间就多了一层“代理”,这层“代理”既简化了用户的操作,也保护了内核。用户界面和命令行就是这个另外开发的程序,就是这层“代理”。在Linux下,这个命令行程序叫做 Shell

(一)Linux Shell编程——简介、变量、字符串、数组

2.3.1 $* 和 $@ 的区别

$* 和 $@ 都表示传递给函数或脚本的所有参数,不被双引号(” “)包含时,都以”$1” “$2” … “$n” 的形式输出所有参数。但是当它们被双引号(” “)包含时,”$*” 会将所有的参数作为一个整体,以”$1 $2 … $n”的形式输出所有参数;”$@” 会将各个参数分开,以”$1″ “$2” … “$n” 的形式输出所有参数。

输出

2.3.2 退出状态

$可以获取上一个命令的退出状态。所谓退出状态,就是上一个命令执行后的返回结果。退出状态是一个数字,一般情况下,大部分命令执行成功会返回 0,失败返回 1。

2.4 Shell替换

2.4.1 转义字符

如果表达式中包含特殊字符,Shell 将会进行替换。例如,在双引号中使用变量就是一种替换,转义字符也是一种替换。

输出

常用转义字符如下

(一)Linux Shell编程——简介、变量、字符串、数组

结果

2.5 Shell字符串

2.5.1 单双引号

Shell中最常用的数据类型就是字符串了,字符串可以用单引号,也可以用双引号,也可以不用引号。学过拍黄片的会发现,单双引号的区别跟PHP类似。

之前已介绍过了,这里再整理一下

单引号字符串的限制:

  • 单引号里的任何字符都会原样输出,单引号字符串中的变量是无效的;
  • 单引号字串中不能出现单引号(对单引号使用转义符后也不行)。

双引号的优点:

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

2.5.2 拼接字符串

2.5.3 获取字符串长度

2.5.4 截取字符串

2.5.6 查找子字符串

这里发现Shell该语法只截取第一个字符的位置。

2.6 数组

2.6.1 定义数组

定义数组有如下三种方法

2.6.2 读取数组

2.6.3 获取数组长度

 

文章知识点与官方知识档案匹配,可进一步学习相关知识CS入门技能树Linux入门初识Linux24757 人正在系统学习中 相关资源:软件工程课件软件工程是指研究软件生产的一门学科,也就是将完善的…

来源:weixin_34198583

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2018年5月8日
下一篇 2018年5月9日

相关推荐