随笔分类 - shell
摘要:问题: 我想修改 a.sql 的指定字符串 文件如下: INSERT OVERWRITE WF_STUDIO_H( `WFID` ,`WFNAME` ,`WFSIGN` ,`WFSORT` ,`WFFOLDER` )PARTITION(dt = cast ('3000-12-31' as varch
阅读全文
摘要:#查看匹配到行的前面一行 cat file.txt |grep '5' -B1 #查看匹配到行的后面两行 cat file.txt |grep '5' -A2 #查看匹配到行的前后各两行 cat file.txt |grep '5' -C2 #查看两个字符串之间的内容(在一行中才有效) cat fi
阅读全文
摘要:如果有的字符串含有特殊字符( $ ' () )--采用替换的思路 more a.txtPARTITION(Etl_Job=cast('$JOB_NAME$' as varchar(50)),dt) 下面的步骤:a="Etl_Job=cast('\$JOB_NAME$' as varchar(50))
阅读全文
摘要:我们会遇到很多进入后台系统的时候,会根据选择,进入不同的系统,下面是一个简单的例子: #!/bin/shfunction menu (){ cat << EOF |************Menu Home Page ************| `echo -e "\033[35m 1)Person
阅读全文
摘要:有一个需求,根据输入的时间段,在这个时间段中的是月末的日期执行脚本 解决如下: #!/bin/bashif [ -z $1 ]thenecho "请输入年月日8位开始日期"exit $E_MISSING_POS_PARAM fiif [ -z $2 ]thenecho "请输入年月日8位结束日期"e
阅读全文
摘要:sed命令行格式为: sed [-nefri] ‘command’ 输入文本/文件 常用选项: -n∶取消默认的输出,使用安静(silent)模式。在一般 sed 的用法中,所有来自 STDIN的资料一般都会被列出到屏幕上。但如果加上 -n 参数后,则只有经过sed 特殊处理的那一行(或者动作)才会
阅读全文
摘要:命令替换在bash中,$( )与` `(反引号)都是用来作命令替换的。命令替换与变量替换差不多,都是用来重组命令行的,先完成引号里的命令行,然后将其结果替换出来,再重组成新的命令行[python@master2 shell]$ echo today is $(date "+%Y-%m-%d")tod
阅读全文
摘要:tee 重定向输出到多个文件 tee 重定向输出到多个文件 在执行Linux命令时,我们既想把输出保存到文件中,又想在屏幕上看到输出内容,就可以使用tee命令 要注意的是:在使用管道线时,前一个命令的标准错误输出不会被tee读取。 tee file //覆盖tee -a file //追加tee -
阅读全文
摘要:一、getopts 简介 由于shell命令行的灵活性,自己编写代码判断时,复杂度会比较高。使用内部命令 getopts 可以很方便地处理命令行参数。一般格式为:getopts optstring name [args] getopts 的设计目标是在循环中运行,每次执行循环,getopts 就检查
阅读全文
摘要:以下为代码实现的一个模拟场景:3个生产者,在不断提供服务,处理需求,假设1s处理一个。 20个消费者,在不断消耗供给产品,提交需求,假设3s消耗一个。情景分析:由于消费者的提交需求能力 和 生产者处理需求的能力 不对等,于是出现了供不应求的供销矛盾。问题:一般情况下,在供不应求时,会有大量的需求被挂
阅读全文
摘要:一、shell判断数组中是否包含某个元素:ary=(1 2 3)a=2if [[ "${ary[@]}" =~ "$a" ]] ; then echo "a in ary"else echo "a not in ary"fi二、判读字符串($str)是否包含另一个字符串($str1):方法1:if
阅读全文