【发布时间】:2017-05-22 01:22:48
【问题描述】:
我有一个仅包含 IP 地址和端口号的文件。我知道如何通过名称启动服务,但如何通过端口号启动和停止服务?
for port in $(cat /home/asd/iplog.txt); do
service /etc/init.d/$port | cut -d\: -f2 start
done
这里是 iplog.txt 输出:
192.168.1.2:21
192.168.2.25:80
192.168.5.230:25
以及脚本的输出:
/etc/init.d/192.168.1.2:21: unrecognized service
cut: start: no such file or directory
/etc/init.d/192.168.2.25:80: unrecognized service
cut: start: no such file or directory
现在我有两个问题:
- 如何通过端口号启动和停止服务?
- 如何远程操作?
由于我不熟悉 shell 脚本,我真的需要你的帮助。
【问题讨论】:
-
我认为,这种方法本质上是有缺陷的:对于任何合理的系统,服务应该是已知的,有时服务应该按一定的顺序启动或停止,等等。利用一些编排解决方案,例如,Salt,用于管理您的服务。
标签: bash shell command-line scripting pipe