当前位置: 首页 > news >正文

深圳市电商网站建设企业百度最贵关键词排名

深圳市电商网站建设企业,百度最贵关键词排名,威海网页设计制作公司,wordpress支付按钮背景知识 获取进程PID杀进程 pidlsof -i:7009 | grep LISTEN | awk {print $2} kill -9 $pid 在Shell脚本中调用另一个脚本的三种方式: source 指定脚本中的命令在同一个shell中运行。(默认shell中的命令都是创建sub-shell,然后执行。执行…

背景知识

获取进程PID杀进程

pid=`lsof -i:7009 | grep LISTEN | awk '{print $2}'`
kill -9 $pid

在Shell脚本中调用另一个脚本的三种方式:

  • source 指定脚本中的命令在同一个shell中运行。(默认shell中的命令都是创建sub-shell,然后执行。执行完后,返回父shell)
  • fork 就是创建sub-shell运行脚本中的命令,和默认运行方式相同。
  • exec 和source相似,区别就是,运行完毕命令后退出,不会返回父shell
     

shell运行多个脚本 、多个命令

1.每个命令之间用;隔开

说明:各命令的执行给果,不会影响其它命令的执行。换句话说,各个命令都会执行,但不保证每个命令都执行成功。

2.每个命令之间用&&隔开

说明:若前面的命令执行成功,才会去执行后面的命令。这样可以保证所有的命令执行完毕后,执行过程都是成功的。

3.每个命令之间用||隔开

说明:||是或的意思,只有前面的命令执行失败后才去执行下一条命令,直到执行成功一条命令为止

4.同时运行多个命令的方式:&符号。

注意:试验了多次   ; 和  kill -2都没解决问题,&符号和 ()一起,才解决了同时执行三个不同目录下多个sh脚本的问题。

参考了这篇文章:https://blog.csdn.net/Scythe666/article/details/85244901


#!/bin/sh
#修改前的脚本
python a.py > logs/a.log
python b.py > logs/b.log
python c.py > logs/c.log#运行发现只有一个python进程,看日志发现只有a运行了,b和c都没跑起来。
#估计因为shell是顺序执行的,a没执行完,所以不会去执行b和c,查了一下果然。
#修改后#!/bin/sh
#启动前先停止所有py进程:
ps -ef | grep python | cut -c 9-15| xargs kill -s 9
#shell也提供了一个同时运行多个命令的方式:&符号
python a.py > logs/a.log & python b.py > logs/b.log & python c.py > logs/c.log

我的疑问:有多个sart .sh脚本,启动A后,不停的打日志,就不执行后面的start2.sh了

问题: 有多个sart .sh脚本,启动A后,不停的打日志,就不执行后面的start2.sh了,一般在Terminal里面就按Ctrl+C了。

但是怎么在shell脚本里面实现这个呢?

百度结果:

做自动化测试, 需要用instruments命令启动模拟器, 这个命令启动模拟器后不会自动退出. 需要按Ctrl+C, 并且在退出时, 这个命令会写数据到指定文件, 我们也需要拿到这些数据. 如何在shell脚本或者其他编程语言中实现在Terminal里面按Ctrl+C的效果?

作者答复用了  kill -2

但是,我试验了kill -2对我 并不起作用啊???

我后面的解决办法:用了重定向,不想再屏幕上看到输出结果。然后用了 &符号让多个shell脚本同时执行。

/dev/null 文件
如果希望执行某个命令,但又不希望在屏幕上显示输出结果,那么可以将输出重定向到 /dev/null:
举例 $ command > /dev/null
/dev/null 是一个特殊的文件,写入到它的内容都会被丢弃;如果尝试从该文件读取内容,那么什么也读不到。 /dev/null 文件非常有用,将命令的输出重定向到它,会起到"禁止输出"的效果。如果希望屏蔽 stdout 和 stderr,可以这样写:
$ command > /dev/null 2>&1
注意:0 是标准输入(STDIN),1 是标准输出(STDOUT),2 是标准错误输出(STDERR)。

 

如何利用shell在终端下输了ctrl+z,ctrl+c,ctrl+d

通常来说:
ctrl-c 是发送 SIGINT 信号,
ctrl-z 是发送 SIGSTOP信号
ctrl-d 不是发送信号,而是表示一个特殊的二进制值,表示 EOF具体你可以 stty -a 查看系统设置你如果想在脚本中实现,举个例子:sleep 100 &
pid=$!
kill -SIGSTOP $pid  # 相当于 ctrl-z
kill -SIGCONT $pid  # 相当于 fg
kill -SIGINT $pid   # 相当于 ctrl-c

多个同名的sh脚本怎么用一个sh脚本执行?

问题背景描述:

比如A目录下有好几个子文件
A:/a
A:/b
A:/c
A:/d
每个文件夹都有个同名的down.sh,我想同时运行这个down.sh ,如何弄?

如果一个个进到对应目录执行也是OK的,但是比较麻烦。就想汇总1个SH来执行多个sh脚本比较省事。

下面这个网友的一行命令非常好,但是我那多个sh脚本里面,有的是相对路径,有的是绝对路径,执行会报错文件不存在之类的(文件不是我写的,我也懒得去改了)

find . -iname down.sh -exec \{\} \;

参考了另外的答复,写了1个sh脚本,测试了下,没发现啥问题

for 变量 in 父目录/*                         遍历父目录里面的全部子目录

#!/bin/bash
for folder in /tools/apps/*
do
# 这里的-d 参数判断$folder是否存在,-f 参数判断 $file 是否存在
if [ -d $folder ] && [ -f $folder/down.sh ]; thencd $folder && chmod +x $folder/down.sh &&  $folder/down.sh && echo "$folder ok"
fi
done

 

怎么用1个shell杀掉多个指定的端口呢

问题描述:目录里面部署了多个服务。每个服务的端口是分配的固定的。一个个的杀好麻烦,一个shell自动杀岂不更好

for 变量 in $数组[*]               遍历数组里的端口号    

#!/bin/bash
#"down_all.sh"杀掉shell脚本所在目录里面指定端口的进程
a=(7002 7003 7004 7005)
for port in ${a[*]}; do
#echo $i
#把命令提取到的进程id赋值给变量id。语法是:反单引号把命令括起来,赋值给变量
id=`lsof -i:$port |grep -i 'LISTEN'| awk '{print $2}'`
kill -9 $id && echo "kill $port success" 
done

怎么用1个shell查看多个指定端口的状态呢?

#!/bin/bash
#"p_all.sh" 查看指定端口的状态
a=(9002 9003 9004 9005 9007 )
for port in ${a[*]}; do
#echo $i
id=`lsof -i:$port |grep -i 'LISTEN'`
echo $id
done

 

http://www.lbrq.cn/news/2539891.html

相关文章:

  • 苏州比较大的网站公司seo管理平台
  • 北京网页制作费用大概多少seo公司系统
  • 营销企业网站建设百度问一问付费咨询
  • 什么网站可以做卡首屏淘口令快速提升排名seo
  • 免费网站整站模板下载网站开发外包
  • 滨海专业做网站的公司百度快照怎么使用
  • 招聘网站套餐费用怎么做分录seo前线
  • 做的最好的微电影网站有哪些抖音流量推广神器软件
  • 关于淘宝店网站建设的可行性报告百度公司电话
  • 人大信息网站建设方案网站的推广方法
  • 做视频链接网站网页搜索引擎
  • 广东省网站免备案安徽网站设计
  • 云南网站建设费用市场营销师报名官网
  • 成都网站搜索优化百度搜索引擎的原理
  • h5商城网站是什么企业培训考试系统
  • 张店好的网站建设的公司网络推广技术外包
  • 建网站需要服务器吗百度怎么发布广告
  • 合肥企业网站建设工网络营销概述ppt
  • qq官方客服在线咨询企业网站优化推广
  • 学校教务网站的设计与实现热点新闻
  • 湖南网站建设企业长安网站优化公司
  • html5做网站网络营销广告名词解释
  • wordpress 搬家乱码网络优化公司有哪些
  • 门窗网站建设杭州seo网站建设靠谱
  • 新沂建设工程交易中心seo 视频
  • 如何策划网络推广方案搜索引擎优化的内容包括
  • 福州网站设计网址怎样在网上推广
  • 那里有专业注册网站建设的如何查看网站权重
  • 一台机器在家创业合肥优化
  • 武汉网站托管公司网址大全下载
  • 疯狂星期四文案网第27天运营日记
  • [论文阅读] 人工智能 + 软件工程 | GitHub Marketplace中CI Actions的功能冗余与演化规律研究
  • 区分「尊重」和「顺从」
  • Day25-对称二叉树-
  • C#线程同步(二)锁
  • Ubuntu-Server-24.04-LTS版本操作系统如何关闭自动更新,并移除不必要的内核