您的位置:首页 > 运维架构 > Shell

linux 程序设计笔记 第二章 shell

2011-10-27 19:17 441 查看

第2章 shell程序设计

2.1 管道和重定向

标准文件描述符0、1、2分别代表,标准输入,标准输出和标准错误。

把输出内容附加到一个文件:ps >> lsout.txt

默认重定向的是标准输出。也可以把标准错误也重定向。

如 Kill -HUP 1234 >killout.txt 2 > killerr.out

也可以把两个输出都定向到同一个文件,

如 kill -1 1234 >killout.txt 2>&1

也可以丢弃所有输出信息,如:

Kill -1 1234 >/dev/null 2 >&1

也可以重定向输入

如 more < killout.txt

管道例子 ps | sort | more

Sort 可以重排序,more 可以 分页输出

2.2 shell 程序

注意,当shell期待进一步输入时,正常的$号就变成了>号。

Shell 还提供通配符扩展功能。

* 匹配一个字符串, ?可以匹配单个字符, [set] 匹配方括号中的任意一个单个字符。[^set] 对方括号内容去反,即匹配任意未出现的字符。扩展的花括号{},仅仅部分shell支持。可以用来匹配字符串。

如:ls my_{finger, toe}s

默认脚本执行程序

#!/bin/sh

脚本最后以exit结尾,是为了确保脚本程序能够返回一个有意义的退出码。

2.3 shell 语法

变量,在shell中使用变量,不需要提前声明。无论何时你想获取一个变量的内容,在变量名前加$,如果给变量赋值,直接使用变量名字就可以了。

如果字符串里包含空格,就必须用引号把它们括起来,此外。等外等号两边不能有空格。

我们也可以使用read 命令读入一个变量。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: