Linux
從 bash 中查找使用者的家
我試圖從木偶腳本中獲取使用者家的價值。此特定使用者是 Samba 使用者,而不是本地使用者,其使用者名格式為
DOMAIN\user
。我嘗試了以下方法,但沒有成功:
echo "~DOMAIN\\user"
(輸出準確的輸入)getent passwd DOMAIN\\user
(什麼都不輸出,使用者甚至沒有使用 getent passwd 列出)我很驚訝 getent 沒有工作,因為它被配置為這樣做:
$ cat /etc/nsswitch.conf | grep passwd passwd: compat winbind
一個使用作品的簡單 C 程序
getpwnam
,但是從 puppet 中包含和使用將會有問題。如何從 puppet 或簡單的 shell 命令中檢索使用者的家?
我不知道 Samba 在這方面的表現如何,但除此之外……
finger -mlp $USER | grep Directory | cut -f2 -d ' '
(儘管這將需要一些調整來處理路徑中的空格)
要使
getent
呼叫起作用,只需將參數括在單引號中'
:getent passwd 'DOMAIN\user'