%H:%i.pid在.service文件中做了什么?

时间:2017-05-26 23:44:04

标签: linux systemd

好的,我一直在寻找这个地方,但却找不到这是做什么的。下面是.service文件中的一行,用于启动时启动tightvnc。

PIDFile=/home/username/.vnc/%H:%i.pid

我假设它正在抓取用户名:1​​.pid来自文件夹,但我不明白个别部分%H和%i实际上在做什么?我知道脚本的其余部分在其他几行中使用了%i。具体是:

ExecStartPre=-/usr/bin/vncserver -kill :%i > /dev/null 2>&1
ExecStart=/usr/bin/vncserver -depth 24 -geometry 1280x800 :%i
ExecStop=/usr/bin/vncserver -kill :%i

我也不确定%H和%i运营商的名称是什么,因此很难找到他们在线搜索。我能够推断的是%H必须抓住用户名,但我不确定我抓的是什么数字或数字。

/ usr / bin / vncserver中的文件如下,日期字符串为:

May 26 16:04 username:1.log
May 26 15:56 username:1.pid
May 26 15:21 username:2.log
May 26 15:21 username:2.pid
May 26 15:21 username:3.log
May 26 15:21 username:3.pid
May 25 17:31 passwd
May 25 17:35 xstartup
May 25 17:32 xstartup.bak

我在这里添加日期的唯一原因是因为我知道%H可以持续数小时,但我非常怀疑这就是它所代表的。

1 个答案:

答案 0 :(得分:4)

.service个文件不是bash个脚本,它们是systemd使用的单位文件。这些文件的结构描述为here%后跟一个字母是由各种系统参数替换的说明符:

  • %H =主机名
  • %i =实例名称