Linux实践 shell编程

更新时间:2023-08-06 05:17:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

第14章 高级shell脚本 14章 高级shell shell脚本 编程

本章主要内容

14.1 高级脚本编程的概念 14.2 shell函数 shell函数

第13章的内容还不够吗? 13章的内容还不够吗 章的内容还不够吗?

shell脚本并不局限于简单地逐行执行 shell脚本并不局限于简单地逐行执行 命令,更为强大的功能之一就是能够 创建函数和函数库; 程序员还需要考虑如何调制shell脚本。 程序员还需要考虑如何调制shell脚本。

14.1 高级脚本编程的概念

14.1.1 输入输出重定向 1. 三个标准的输入输出文件 STDIN:标准输入,通常指键盘。 STDIN:标准输入,通常指键盘。 STDOUT:标准输出,通常指显示器。 STDOUT:标准输出,通常指显示器。 STDERR:标准错误输出,通常指显 STDERR:标准错误输出,通常指显 示器。

14.1 高级脚本编程的概念 14.1.1 输入输出重定向 2. 重定向操作符 >:把STDOUT重定向到一个文件。 :把STDOUT重定向到一个文件。 <:把STDIN重定向到一个文件。 :把STDIN STDIN重定向到一个文件。 >>:把STDOUT添加到一个文件的末尾。 >>:把STDOUT添加到一个文件的末尾。 |:从一个进程获取输出,然后发给另一个 进程。 <<delimiter:把当前的输入流和STDIN关 <<delimiter:把当前的输入流和STDIN关 联起来直到到达指定的分隔符。

14.1 高级脚本编程的概念

14.1.1 输入输出重定向 3. 一些例子 ls > fileList ls >> fileList ls | wc

14.1 高级脚本编程的概念

14.1.1 输入输出重定向[root@localhost ~]# cat << END > The cat > Sat on the > Mat. > END The cat Sat on the Mat.

14.1 高级脚本编程的概念

14.1.1 输入输出重定向 4. >和一些操作符的结合 >和一些操作符的结合 >&: STDOUT和STDERR同时重定向。 >&: 将STDOUT和STDERR同时重定向。 >!: 强制文件以append模式创建,或 >!: 强制文件以append模式创建,或 以normal模式覆盖到一个已经存在的文 normal模式覆盖到一个已经存在的文 件。 >@: >@: 以二进制方式打开文件。

14.1 高级脚本编程的概念

14.1.2 命令替换:反引号和圆括号扩展 作用:用变量保持命令的执行结果 使用: LINES=‘ LINES=‘wc -l textFile’ textFile’ LINES=“ LINES=“$(wc -l textFile)” textFile)”

14.1 高级脚本编程的概念

14.1.2 命令替换:反引号和圆括号扩展 # VAR=-l VAR=# LINES='wc $VAR fileList' # echo $LINES wc $VAR fileList

14.1 高级脚本编程的概念

14.1.2 命令替换:反引号和圆括号扩展# VAR=-l VAR=# LINES='wc $VAR fileList' # echo $LINES wc $VAR fileList # LINES="$(wc $VAR fileList)" # echo $LINES 5 fileList

14.1 高级脚本编程的概念

14.1.3 使用环境变量和shell变量 使用环境变量和shell变量 什么是shell变量? 什么是shell变量? 在shell中定义的变量,包括本地变 shell中定义的变量,包括本地

变 量和环境变量。

14.1 高级脚本编程的概念

14.1.3 使用环境变量和shell变量 使用环境变量和shell变量 另一种shell变量分类方式: 另一种shell变量分类方式:1. 2. 3. 4. 用户自定义变量. 用户自定义变量. 位置变量即 shell script之参数($1..$9 ) script之参数($1..$9 预定义变量(特殊变量) 环境变量(shell定制,如PS1) 环境变量(shell定制,如PS1)

14.1 高级脚本编程的概念

本地变量 本地变量在当前shell的生命周期内 本地变量在当前shell的生命周期内 使用。

1.定义本地变量 定义本地变量VARIABLE=VALUE

14.1 高级脚本编程的概念

本地变量

2. 删除本地变量 删除本地变量unset VARIABLE

3. 显示所有shell变量set

14.1 高级脚本编程的概念

本地变量4. 4.测试变量是否存在${VARIABLE:-value}

例子:echo “The sky is ${COLOR:-grey} today”

如果定义了COLOR,则取其值;否则值为grey

14.1 高级脚本编程的概念

本地变量

5. 5.设置变量只读VARIABLE=value readonly VARIABLE

例子:# COLOR=blue # readonly COLOR

14.1 高级脚本编程的概念

环境变量 环境变量在当前shell进程及其子进程(包括编 环境变量在当前shell进程及其子进程(包括编 辑器、脚本、命令等应用)中使用的变量。 环境变量可以在命令行中设置,但用户注销 时这些值会丢失,因此最好在.profile文件中 时这些值会丢失,因此最好在.profile文件中 定义。 所有环境变量均为大写。

14.1 高级脚本编程的概念

环境变量

1.定义环境变量 1.定义环境变量 VARIABLE=VALUE export VARIABLE 或 export VARIABLE=VALUE

本文来源:https://www.bwwdw.com/article/xoum.html

Top