摘要:下面是一屏幕菜单的设计
阅读全文
随笔分类 - shell编程
摘要:1.使用$#
$ pg opt.sh
#!/bin/sh
#opt.sh
阅读全文
摘要:1. $ echo Hit to exit *
返回 Hit to exit gd1.pl invoice.xml inXML.dtd pdate.pl perl1.pl perl2.pl perl3.pl perl4.pl perl5.pl perl6.pl perl7.pl perl8.pl pfind.pl pwho.pl s2 simple1.pl simple.pl testalgor.pl tie1.pl 等
* 表示当前目录下的所有文件,如果要显示Hit to exit *字符,需要用
$ echo "Hit to exit *"
阅读全文
摘要:1./etc/profile
用户登录时,自动读取/ect目录下profile文件,此文件包括
阅读全文
摘要:删除前N个字符
sed -i 's/^..//' file (N个.表示N个字符)
阅读全文
摘要:tr用来从标准输入中通过替换或删除操作进行字符转换。tr主要用于删除文件中控制字符或进行字符转换。
阅读全文
摘要:split用来将大文件分割成小文件。有时文件越来越大,传送这些文件时,首先将其分割可能更容易。
阅读全文
摘要:cut用来从标准输入或文本文件中剪切列或域。剪切文本可以将之粘贴到一个文本文件
阅读全文
摘要:首先建立一库文件目录,设为~/bin/lib,然后建立获得IP地址的函数,函数名用_getip(),文件名为mylib1.sh
阅读全文
摘要:合数分解
#!/bin/sh
#把一个大于等于2以上的正整数,分解成质因子的连乘积
阅读全文
摘要:测试文件如下
$cat myfile.txt
May Day
May Day
May Day
Going Down
May Day
阅读全文
摘要:sort命令主要用于文本排序,现有以文本文件video.txt$cat video.txtBoys in Company C:HK:192:2192Alien:HK:119:1982The Hill:KL:63:2972Aliens:HK:532:4892Star Wars:HK:301:4102A Few Good Men:KL:445:5851Toy Story:HK:239:3972将此文本按字母从小到大的顺序排序并输出到results.outsort video.txt >results.out再查看results.out,得到A Few Good Men:KL:445:5851
阅读全文
摘要:#!/bin/sh C=([3]=77 [1]=100 [5]=66) echo ${C[5]}echo ${C[@]} #取出所有元素
阅读全文
摘要:可以在shell中强制必须声明变量,shopt 指令,如下面的指令mustpreset.sh 运行结果为50#!/bin/shdeclare Informix=50echo $Informix注意:在ubuntu中,运行此脚本需用 $bash mustpreset.sh,因为默认的sh版本为dash,不是bash如果脚本如下,会报错,因为没有事先声明变量shopt -s -o nounsetecho $test
阅读全文
摘要:使用unset -v来取消变量,unset -f取消函数,下面会提示找不到show_name函数的错误
1 #!/bin/sh
2 function show_name
3 {
4 echo "今天是$1,你$2大大,来自$3"
5 }
6
7 unset -f show_name
阅读全文
摘要:基本sed编辑命令
p 打印匹配行
= 显示文本行号
a\ 在定位行后附加新文本信息
i\ 在定位行后插入新文本信息
d 删除定位行
c\ 用文本替换定位文本
阅读全文
摘要:find命令行选择
-name 按照文件名查找文件
-perm 按照文件权限查找文件
-prune 忽略目录
阅读全文
摘要:设有文件grade.txt,
$pg grade.txt
M.Tansley 05/99 48311 Green 8 40 44
J.Lulu 06/99 48317 green 9 24 26
P.Bunny 02/99 48 Yellow 12 35 28
J.Troll 07/99 4842 Brown-3 12 26 26
L.Tansley 05/99 4712 Brown-2 12 30 28
显示其内容,并输入到delete_me_and_die中
awk '{print $0}' grade.txt | tee delete_me_and_die,$0表示打印所有域
打印1,4域
阅读全文
摘要:有data.f文件
48 Dec 3BC1997 LPSX 68.00 LVX2A 138
483 Sept 5AP1996 USP 65.00 LVX2C 189
47 Oct 3ZL1998 LPSX 43.00 KVM9D 512
219 dec 2CC1999 CAD 23.00 PLV2C 68
484 nov 7PL1996 CAD 49.00 PLV2C 234
483 may 5PA1998 USP 37.00 KVM9D 644
216 sept 3ZL1998 USP 86.00 KVM9E 234
现统计含有"48"字符的行数
$grep -c "48" data.f
显示包含"48"字符串的文本
阅读全文