Shell脚本编程入门到放弃

1 区分大小写

UNIX是区分大小写的,因此shell脚本也是区分大小写的

2 特殊字符

UNIX的某些字符都有特殊的意义或功能,如果它们不以其特殊的意义使用必须要进行转义(escaped)。

为了转义它们需要用反斜杠或者单引号括起来。

3 shell

shell(命令行解释器)是一个能够用来运行命令、程序和shell脚本的环境。

4 shell脚本

shell脚本就是命令的有机组合。

shell脚本和函数都是解释型的,ASCII文本,不能被编译。

5 函数

函数的编写和脚本的编写类似,不同之处在于函数是在脚本中定义和调用。

函数形式如下:

function function_name
{
	commands to execute
}

或者

function_name ()
{
	commands to execute
}

在函数被调用前要对其进行声明或者定义,函数部分必须出现在调用函数的命令语句之前。

6 运行shell脚本

如果不采用对应的shell来运行则需要加上可执行权限

7 shell脚本中的注释和风格

良好的注释和代码编写风格对于可读性很重要

8 控制结构

if ... then

if ... then ... else

if ... then ... elif ... (else)

for ... in

while

until

case

9 使用break、continue、exit和return语句

10 here文档

here文档用于输入重定向到某个交互式shell脚本或程序。

11 shell脚本命令

表 1 UNIX命令概述

此处应该有表

12 符号命令

表2中的符号实际上是命令。

表 2 符号命令

此处应该有表

13 变量

变量是可以进行赋值的字符串,可以给的值包括数字、文本、文件名、设备或其他任何类型的数据。

为了访问变量所指代的数据需要在变量前加一个$,而且不能有空格。

14 命令行参数

命令行参数$1,$2,$3,...,$9是位置参数,$0指向实际的命令、程序、shell脚本或函数。

在一个函数中的$0,$2等由函数本身使用,可能不会在调用函数的shell脚本环境中出现。

15 shift命令

shfit命令用于将位置参数向左移动,例如shift命令使得$2成为$1。

也可以使用shift移动多个位置,shift 3使得$4移动到$1的位置。

16 特殊参数$*和[email protected]

$*和[email protected]允许一次访问所有的命令行参数。

除非使用双括号把它们括起来,否则$*和[email protected]具有相同的功能。

"$*"将整个参数列表作为一个参数来获取

"[email protected]"获取整个参数列表,并将其分割成不同的参数

17 双引号"、符号‘和`

在允许字符替换或命令替换的语句中,可以使用双引号,定义包含空格的变量也需要使用双引号"

不允许字符替换或命令替换的语句中可以使用‘。使用‘括起来的目的是希望使用正文文本,而不进行任何替换。

在希望执行某个命令或脚本并替换其输出结果使用`。

18 在Solaris中使用awk

Solaris中的awk为nawk,在写脚本的时候可以加入如下代码

case $(uname) in
SunOS) alias awk=nawk
	;;
	esac

19 正确使用echo命令

比如在有的shell中,echo -e "\n"换行

有的是echo "\n"就可以了

如果脚本使用的*/bin/bash,可以添加如下语句

case $SHELL in
*/bin/bash ) alias echo="echo -e"
	;;
esac

20 shell脚本中的数学

21 内置的数学函数

22 文件权限、suid和sgid程序

23 在远程主机上运行命令

时间: 2024-10-11 01:47:22

Shell脚本编程入门到放弃的相关文章

8.15_Linux之bash shell脚本编程入门篇(二)以及文件查找和压缩的使用

bash shell脚本编程入门篇(二) read命令的使用 作用: 使用read来把输入值分配给一个或多个shell变量: -p指定要显示的提示 -t TIMEOUT read从标准输入中读取值,给每个单词分配一个变量,所有剩余单词都被分配给最后一个变量 EX.read -p "Enter a filename:" FILE 条件选择之if的使用 if的作用:选择执行(注意:if语句可嵌套) 单分支 if 判断条件;then 条件为真的分支代码 fi EX.单分支案例 双分支 if

8.17_Linux之bash shell脚本编程入门篇(三)之循环以及函数function的使用

bash shell脚本编程入门篇(三)之循环 什么是循环执行? 将某代码段重复运行多次 重复运行多少次: 循环次数事先已知 循环次数事先未知 有进入条件和退出条件 相关命令:for, while, until,selet, for命令的使用 作用: 依次将列表中的元素赋值给"变量名"; 每次赋值后即执行一次循环体; 直到列表中的元素耗尽,循环结束 命令格式: for 变量名 in 列表; do 循环体(正常执行的执行命令) 语句1 语句2 语句3 ... done 列表生成方式: (

08 bash特性--shell脚本编程入门

shell脚本编程入门 编程语言介绍 变量 变量:就是给计算机内存中的一段空间命令,命令的这个空间就叫做变量,而再给这个空间放入值的过程,我们就叫做给变量赋值: bash下的变量的内部数据类型:(这是数据在内存中存放的格式,默认情况下,shell程序下一班都不会去申明数据类型,所以,我们的bash程序默认数据为字符类型) 字符型(string) 数值:整型(int).浮点型 布尔类型:真假 同时,脚本一般在执行的时候都会自动启动一个子shell进程,命令行中的启动的脚本会继承当前shell环境变

8.11_Linux之bash shell脚本编程入门篇(一)

什么是bash shell脚本编程? 答:Linux里面有多种shell,而CentOS和redhat的默认shell是bash shell.至于shell脚本,这个跟windows操作系统里面的批处理文件有点像(.bat的文件).不知道大家还是否记得Linux的哲学思想吗?其中有那么两点点:由众多目的的单一应用程序组成:一个程序只做一件事,且做好:组合目的的单一的小程序完成复杂的任务.我觉得shell脚本编程就很好的体现了这个哲学思想.shell脚本利用shell的功能缩写的一个"程序&quo

01 Shell脚本编程入门知识

Linux Shell语言使用背景  目前全球正处于“互联网+”的时代,各行各业都与互联网挂钩,比如互联网+教育.互联网+销售等等.几乎所有的商品.服务网上都能找得到,而支撑互联网的幕后支柱就是Linux系统.Linux运维技术成为IT技术人员的必备技能.  想要降低Linux运维成本就要进行运维自动化,进行自动化就需要脚本语言.时下Linux系统最流行的脚本语言就是Shell和Python.Python的流行时间短,学习成本高.而Shell几乎是所有运维公司都必须使用的自动化语言,在很多工作环

Linux shell脚本编程入门 (一)

环境变量 一些命令 shell脚本中经常出现各种环境变量,因此要写脚本,必须先来了解环境变量.常见的处理环境变量的命令,列举在下面 set 用来显示本地变量 env 用来显示环境变量 export 用来显示和设置环境变量 source 后面跟一个文件,可以直接执行文件里的脚本命令并更新 常见的环境变量 位置参数 相当于C语言中, main函数的argv数组, 这里用 $num 表示,其中 num 是指代一个数字. 见下面的程序实例 # foot.sh #!/bin/sh echo "#0 $0&

Linux shell脚本编程入门(二) 循环语句

前面有了变量的概念和逻辑运算符,就可以写判断语句了,不过这里注意中括号的两边必须得留空格,不然报错. 运算符 赋值, 用 let 语句, 如 let "a=1" 算数运算, 支持 +  -  *  /  %(模运算)  **(幂运算) 位运算符, 支持 <<(左移)  >>(右移)  &(按位与)  |(按位或)  ~(按位取反)  ^(按位异或) if / then / else 语句 先举个栗子呗~ #!/bin/bash read var1 if

Shell脚本编程30分钟入门

什么是Shell脚本 示例 看个例子吧: #!/bin/sh cd ~ mkdir shell_tut cd shell_tut for ((i=0; i<10; i++)); do touch test_$i.txt done 示例解释 第1行:指定脚本解释器,这里是用/bin/sh做解释器的 第2行:切换到当前用户的home目录 第3行:创建一个目录shell_tut 第4行:切换到shell_tut目录 第5行:循环条件,一共循环10次 第6行:创建一个test_1…10.txt文件 第7

shell脚本编程30分钟入门上手

什么是Shell脚本 Shell脚本(英语:Shell script),又称Shell命令稿.程序化脚本,是一种电脑程序与文本文件,内容由一连串的shell命令组成,经由Unix Shell直译其内容后运作.被当成是一种脚本语言来设计,其运作方式与直译语言相当,由Unix shell扮演命令行解释器的角色,在读取shell脚本之后,依序运行其中的shell命令,之后输出结果.利用shell脚本可以进行系统管理,文件操作等. 示例 看个例子吧: #!/bin/sh cd ~ mkdir shell