首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从批处理脚本运行进程

如何从批处理脚本运行进程
EN

Stack Overflow用户
提问于 2021-07-19 13:30:10
回答 2查看 226关注 0票数 1

我在Linux- Debian /Linux6.0中有一个简单的批处理脚本,它可以停止进程,然后删除日志文件,然后再次启动该进程:

代码语言:javascript
复制
#!/bin/bash
killall -KILL rsyslogd
sleep 5s
rm /var/log/syslog
rm /var/log/messages
rm /var/log/kern.log
sleep 3s
rsyslogd
exit

进程名为The。在删除日志文件之前,我必须关闭它,这样linux才能从磁盘中空出空间。

我看到killall -KILL以它的名称关闭进程,但是相反的是什么-- run命令?在没有任何命令的情况下用其名称调用它似乎不起作用。我很高兴有任何建议,谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-07-19 15:15:34

Debian使用systemd来管理进程。因此,您应该使用systemd的命令停止并启动rsyslogd

代码语言:javascript
复制
systemctl stop rsyslog

代码语言:javascript
复制
systemctl start rsyslog

如果您使用的是非常老的Debian版本(太老了,您应该升级),那么可能仍然使用sys。在这种情况下,/etc/init.d下有一个名为rc.rsyslog或类似的文件(使用ls /etc/init.d查找确切的名称)。如果是那样的话

代码语言:javascript
复制
sudo /etc/init.d/rc.rsyslog stop

代码语言:javascript
复制
sudo /etc/init.d/rc.rsyslog start

或者,你的systemd-package可能坏了。在这种情况下,包可以重新安装:

代码语言:javascript
复制
apt-get --reinstall install systemd
票数 2
EN

Stack Overflow用户

发布于 2021-07-19 15:16:07

若要启动rsyslogd,请执行以下操作:

代码语言:javascript
复制
 systemctl start rsyslog

为了阻止它:

代码语言:javascript
复制
 systemctl stop rsyslog

如果你想同时做这两件事,使用

代码语言:javascript
复制
 systemctl restart rsyslog
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68441337

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档