由于工作需要,写了一个脚本,该脚本的功能是实现:
有两个.txt文件,里面存放了一些域名,然后从这两个.txt文件里面,随机取出一个域名,写入到shiting.htm和xiazai.htm文件里面。
脚本写好了,测了语法,没问题,在虚拟机里面也测试通过的,没问题。可是一拷贝到生产环境中,就出了大问题。纠结了我两天,现在终于得到了解决,现在总结以下,以免以后再犯同样的错误。
脚本如下:
#!/bin/bash # author: honway.liu # date: 2012-06-01 # define location file yyxz=/data/cdn/xiazai.txt yyst=/data/cdn/shiting.txt #xiazai=/data/api/xiazai.htm #shiting=/data/api/shiting.htm xiazai=/tmp/xiazai.htm shiting=/tmp/shiting.htm log=/tmp # xiazai & shiting file line number xznm=$(wc -l $yyxz|awk '{print $1}') stnm=$(wc -l $yyst|awk '{print $1}') # random for xiazai & shiting down=$[$RANDOM%$xznm+1] listen=$[$RANDOM%$stnm+1] # get xiazai & shiting domain name xzym=$(sed -n ${down}p $yyxz) stym=$(sed -n ${listen}p $yyst) # write domain name into htm files. echo -n $xzym > $xiazai echo -n $stym > $shiting # out put logs echo "The $xzym at `date +'%F %T'` be provided" >>/$log/xiazai_domain.log echo "The $stym at `date +'%F %T'` be provided" >>/$log/shiting_domain.log exit 0
本栏目更多精彩内容:http://www.bianceng.cn/OS/Linux/
语法检测是没问题的,但是执行的时候,就乱七八糟的。
上面最后一个错是因为exit0没有空格。看sed的结果是OK的,但是变量的内容就乱七八糟,让人很头痛。看下输出的结果
以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索问题
, 文件
, 脚本
, echo
, data
htm
bash脚本、linux bash脚本、高级bash脚本编程指南、bash脚本入门、bash脚本编程,以便于您获取更多的相关知识。
时间: 2025-01-20 20:12:40