linux桌面的路径,linux – 如何获得给定用户“桌面路径”

如何获取给定用户桌面的路径?

我用过这个:

echo $(awk "NR==$(awk 'BEGIN {FS=":"} {print $3}' /etc/passwd | awk "/^$(id -u USERSNAMEHERE)$/ {print NR}")" /etc/passwd | awk 'BEGIN {FS=":"} {print $6}')/Desktop

还有更好的吗?

如果用户桌面名称不是“桌面”怎么办?

谢谢!

p.s.:使用Fedora 14,但有没有“通用”方法来找出给定的用户桌面?

403_17@

试试

xdg-user-dirs.

该页面有一个应该适用于当前用户的示例:

test -f ${XDG_CONFIG_HOME:-~/.config}/user-dirs.dirs && \

source ${XDG_CONFIG_HOME:-~/.config}/user-dirs.dirs

echo ${XDG_DESKTOP_DIR:-$HOME/Desktop}

此外,如果您必须阅读/ etc / passwd,最好使用getent passwd的输出,因为某些用户数据可能存储在NIS,LDAP或其他一些数据库中.

结合使用它,它适用于名为USERSNAMEHERE的用户:

USER=USERSNAMEHERE

USERDIR=$(getent passwd $USER | cut -f 6 -d :)

USERDIRCONF=${XDG_CONFIG_HOME:-$USERDIR/.config}/user-dirs.dirs

test -f "$USERDIRCONF" && . "$USERDIRCONF"

echo "${XDG_DESKTOP_DIR:-$USERDIR/Desktop}"

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值