写linux一个脚本,周期性的启动和杀死一个程序
时间: 2024-03-05 08:52:20 浏览: 25
以下是一个周期性地启动和杀死一个程序的示例脚本,该程序每10秒钟启动一次,并在执行10秒后被杀死。这个示例假设要启动一个名为`myprogram`的可执行文件:
```
#!/bin/bash
while true
do
./myprogram &
sleep 10
kill $(pidof myprogram)
done
```
这个脚本使用了一个无限循环(`while true`)来周期性地启动和杀死该程序。在循环中,首先使用`&`运算符将该程序作为后台进程启动,然后使用`sleep`命令让脚本等待10秒钟。最后,使用`kill`命令和`pidof`命令来查找和终止该程序。
将这个脚本保存为一个可执行文件(例如`start-stop.sh`),并通过以下命令运行它:
```
./start-stop.sh
```
需要注意的是,这个脚本可能会在程序被杀死之前启动另一个程序实例,因此需要确保程序能够正确地处理这种情况。此外,如果程序在10秒钟内无法完成其工作,可能需要调整脚本中的睡眠时间。
相关问题
写linux一个脚本,周期性的启动和杀死一个程序,并记录执行的次数
以下是一个周期性地启动和杀死一个程序,并记录执行次数的示例脚本。该程序每10秒钟启动一次,并在执行10秒后被杀死。每次程序被启动和杀死时,脚本都会将执行次数记录到一个日志文件中。这个示例仍然假设要启动一个名为`myprogram`的可执行文件:
```
#!/bin/bash
count=0
while true
do
./myprogram &
sleep 10
kill $(pidof myprogram)
count=$((count+1))
echo "Program executed $count times." >> log.txt
done
```
这个脚本使用了一个计数器变量`count`来记录程序被执行的次数。在循环中,首先使用`&`运算符将该程序作为后台进程启动,然后使用`sleep`命令让脚本等待10秒钟。最后,使用`kill`命令和`pidof`命令来查找和终止该程序。每次程序被启动和杀死时,脚本都会将执行次数记录到名为`log.txt`的日志文件中。
将这个脚本保存为一个可执行文件(例如`start-stop-log.sh`),并通过以下命令运行它:
```
./start-stop-log.sh
```
需要注意的是,这个脚本可能会在程序被杀死之前启动另一个程序实例,因此需要确保程序能够正确地处理这种情况。此外,如果程序在10秒钟内无法完成其工作,可能需要调整脚本中的睡眠时间。
linux 写个脚本启动进程和杀死进程
好的,以下是一个简单的 shell 脚本示例,用于启动和杀死一个进程:
启动进程:
```shell
#!/bin/bash
process_name="your_process_name" # 进程名称
path_to_script="path/to/your/script" # 进程启动命令或脚本路径
nohup $path_to_script > /dev/null 2>&1 & # 运行进程,将输出写入 /dev/null,使其在后台运行
echo "$process_name started."
```
杀死进程:
```shell
#!/bin/bash
process_name="your_process_name" # 进程名称
pkill -f $process_name # 杀死进程
echo "$process_name stopped."
```
请替换 process_name 和 path_to_script 为你自己的进程名称和启动命令或脚本路径。执行这些脚本时,您需要具有足够的权限来运行或杀死进程。