代码之家  ›  专栏  ›  技术社区  ›  EagleOne

systemd ExecStart中的参数

  •  0
  • EagleOne  · 技术社区  · 3 年前

    我正在尝试做一个简单的内核验证systemd服务。

    服务是:

    [Unit]
    Description= It checks kernel version
    
    
    [Service]
    ExecStart=/home/handle-kernel-version.sh $EXPECTED_KERNEL $(uname -r)
    StandardOutput=journal+console
    EnvironmentFile=/home/input_kernel.txt
    Type=oneshot
    
    
    [Install]
    WantedBy=multi-user.target
    

    问题是,第二个参数被传递为 $(uname 而不是实际的内核版本。我想这是由于转义字符的systemd处理,我当然可以通过在bash脚本中添加uname行来绕过这个问题,但我还是想知道oneline方法的解决方案。

    0 回复  |  直到 3 年前