![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Shell
xxxxxxxxxxxxxxxxx
这个作者很懒,什么都没留下…
展开
-
shell几例
1.获取当前shell script所在的目录 PROGRAM_LOCATION="$( cd -P "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" 2.检测进程是否存在 -d /proc/$pid or -e /proc/$pid/exe 3.shell and subshell 现在已知的是 while read l...原创 2013-04-25 15:04:15 · 88 阅读 · 0 评论 -
Shell 技巧 | 解决方案
1) 在/etc/profile里创建了环境变量,发现在指定用户下创建的cronjob运行期不能找到对应的环境变量的值(例如$PATH),在crontab下发现默认$PATH=/bin:/usr/bin。如调用的程序不在上述路径,则程序会报错:xxx not found. 上述解决的方案,最好的解决方法是在xxx.sh中第一行这样写: #!/bin/bash -...2015-05-25 13:34:25 · 125 阅读 · 0 评论 -
Monitor a process, if have run for more than 2 mins,kill it.
#!/bin/bash -l process_name='phantomjs' long_term=1 pids=` ps -ef | grep -i "$process_name" | grep -v 'grep' | awk '{print $2;}'` if [ "$pids" == "" ]; then echo "no phantomjs running" >...2016-08-05 18:01:28 · 106 阅读 · 0 评论 -
管道的一个应用: 将一个tcp端口的输出转移到另外一个tcp端口而输出
案例: 有一个应用程序需要把数据输出给远程tcp端口44441, 为了安全, 数据会再次转发到端口44442,从而使得连接到端口44442的应用可以实时接收到数据。 为此,在远程tcp主机编写了shell脚本如下: #!/bin/bash -l pipe=/tmp/testpipe ps -ef | grep -e '44441' -e '44442' | grep -...2016-09-16 10:36:02 · 284 阅读 · 0 评论 -
Shell技巧几例
Shell技巧几例 一般我们的程序会有要求: 如果数据有变化,则更新到数据库。同时,我们会记录相关log,也可以从log中找出变化了的记录总数。 grep -o 'CLF6_F:.*$' CLF6_13_00_14_00_input.log | awk 'BEGIN {last="zzzzzxxx";} { if(last!=$0) {total++; last=$0;} } E...2015-12-10 15:15:22 · 138 阅读 · 0 评论