摘要: 在正则表达式模式中,你也可以反转自读组的作用,你可以寻找组中没有的任意字符,而不是去寻找组中含有的字符。要这么做的话,只要在字符组的开头加个脱字符:例如,data6的内容如下:This is a test lineThis is a different line.This is a test o... 阅读全文
posted @ 2015-09-11 20:20 todaytoday 阅读(544) 评论(0) 推荐(0) 编辑
摘要: 创建文本菜单的一半功夫都花在了创建菜单布局和获取输入的字符上。bash shell提供了一个很容易上手的小工具来自动完成这些工作select命令允许从单个命令行创建菜单,然后在提取输入的答案并自动处理。select命令的格式如下:select variable in listdo commandsd... 阅读全文
posted @ 2015-09-11 15:40 todaytoday 阅读(639) 评论(0) 推荐(0) 编辑
摘要: 文件名menu1.sh#!/bin/bash# sample script menufunction diskspace { clear df -k}function whoseon { clear who}function menusage { clear cat /proc/meni... 阅读全文
posted @ 2015-09-11 15:13 todaytoday 阅读(259) 评论(0) 推荐(0) 编辑
摘要: 在命令行上直接定义shell函数的明显缺点是当退出shell时,函数就消失了,对于复杂的函数来说,这可能会是个问题。 一个简单的方法就是每次启动新shell的时候都会自动加载所需要的函数。 最好的办法就是.bashrc文件。bash shell会在每次启动时在主目录查找这个文件,不管... 阅读全文
posted @ 2015-09-11 14:44 todaytoday 阅读(3979) 评论(0) 推荐(0) 编辑
摘要: 先创建名称为myfuns# my script functionsfunction addem { echo $[ $1 + $2 ]}function multem { echo $[ $1 * $3 ]}function divem { if [ $2 -ne 0 ] then e... 阅读全文
posted @ 2015-09-11 13:45 todaytoday 阅读(260) 评论(0) 推荐(0) 编辑
摘要: $# 是传给脚本的参数个数$0 是脚本本身的名字$1 是传递给该shell脚本的第一个参数$2 是传递给该shell脚本的第二个参数$@ 是传给脚本的所有参数的列表$* 是以一个单字符串显示所有向脚本传递的参数,与位置变量不同,参数可超过9个$$ 是脚本运行的当前进程ID号$? 是显示最后命令的退出... 阅读全文
posted @ 2015-09-11 11:04 todaytoday 阅读(1437) 评论(0) 推荐(0) 编辑
摘要: 文件名:test11.sh#!/bin/bash# adding values in an arrayfunction addarray { local sum=0 local newarray newarray=("$@") for value in ${newarray[*]} do ... 阅读全文
posted @ 2015-09-11 10:40 todaytoday 阅读(478) 评论(0) 推荐(0) 编辑
摘要: #!/bin/bash# array variable to function testfunction testit { local newarray newarray=("$@") echo "The new array value is: ${newarray[*]}"}myarray... 阅读全文
posted @ 2015-09-11 09:56 todaytoday 阅读(351) 评论(0) 推荐(0) 编辑