linux service小例

07-17 1215阅读

linux service 测试

1.创建一个app

// myapp.c
// 间隔10s写入时间到文件
#include 
#include 
#include  // 引入unix标准函数定义,如sleep()
int main()
{
    FILE *fp;
    time_t now;
    char buffer[80];
    // 打开文件以追加模式
    fp = fopen("/tmp/time_log.txt", "w");
    if (fp == NULL)
    {
        perror("Error opening file");
        return (-1);
    }
    while (1)
    {                  // 无限循环
        time(&now);    // 获取当前时间
        strftime(buffer, 80, "%Y-%m-%d %H:%M:%S\n", localtime(&now)); // 格式化时间
        // 写入时间到文件
        fprintf(fp, "%s", buffer);
        // 刷新输出缓冲区到文件,确保数据即时写入
        fflush(fp);
        // 等待3秒
        sleep(10);
    }
    // 注意:这个程序实际上不会到达这里,因为我们在上面使用了无限循环
    // 如果你想要程序在某个条件下退出,你需要在循环中添加适当的逻辑
    // 关闭文件
    fclose(fp);
    return 0;
}
gcc myapp.c -o myapp
sudo mv myapp /usr/local/bin/
sudo chmod 777 /usr/local/bin/myapp
cd /usr/local/bin
./myapp
tail -n 3 /tmp/time_log.txt
rm /tmp/time_log.txt

2.创建服务

#myapp.service 不要有这一行
[Unit]  
Description=My Application Service  
After=network.target  
  
[Service]  
Type=simple  
User=c
ExecStart=/usr/local/bin/myapp  
Restart=on-failure  
  
[Install]  
WantedBy=multi-user.target
sudo mv myapp.service /etc/systemd/system/
cd /etc/systemd/system/
sudo systemctl daemon-reload
sudo systemctl start myapp.service
sudo systemctl stop myapp.service
sudo systemctl status myapp.service
sudo systemctl enable myapp.service
sudo systemctl disable myapp.service
journalctl -u myapp.service
tail -n 3 /tmp/time_log.txt
rm /tmp/time_log.txt
linux service小例
(图片来源网络,侵删)
VPS购买请点击我

文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

目录[+]