2017-05-26 16 views
0

好吧,我一直在尋找各地,無法找到這是做什麼。下面是一個.service文件中的一行,用於在啓動時啓動tightvnc。%H:%i.pid在.service文件中做了什麼?

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

我假設它是抓住用戶名:從文件夾1.pid,但我不明白的單個零件%H和%我實際上是在做什麼?我知道腳本的其餘部分在其他幾行中使用%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

'.service'文件沒有的bash腳本,他們」 'systemd'使用的配置文件。 '%'的東西被'systemd'替代。 – Barmar

+0

@Barmar什麼標籤應該改爲bash而不是? –

+1

我只是把它改成'systemd' – Barmar

回答

3

.service文件不是bash腳本,它們是由systemd使用的單元文件。這些文件的結構描述如下:here%後面有一個字母都說明符得到由各種系統參數代替:

  • %H =主機名
  • %i =實例名稱
+0

難怪我找不到它。一旦它允許我,我會檢查你的答案!謝謝 :) –