# 检测常见桌面路径(英文/中文) if [ -d "$USER_HOME/Desktop" ]; then DESKTOP_DIR="$USER_HOME/Desktop" elif [ -d "$USER_HOME/桌面" ]; then # 处理中文环境 DESKTOP_DIR="$USER_HOME/桌面" fi
if [ -n "$DESKTOP_DIR" ]; then # 复制 .desktop 文件到用户桌面 cp "/usr/share/applications/kylin-note.desktop" "$DESKTOP_DIR/" # 设置正确的所有者和权限 chown $(stat -c '%U:%G' "$USER_HOME") "$DESKTOP_DIR/kylin-note.desktop" chmod 755 "$DESKTOP_DIR/kylin-note.desktop" fi } # 遍历所有可能的用户主目录 for USER_HOME in /home/* /root; do # 跳过无效目录(如 /home/lost+found) if [ -d "$USER_HOME" ] && [ -O "$USER_HOME" ]; then create_desktop_shortcut "$USER_HOME" fi done # 处理当前安装时可能已登录的用户(可选) CURRENT_USER_HOME=$(getent passwd $(logname) | cut -d: -f6) if [ -n "$CURRENT_USER_HOME" ]; then create_desktop_shortcut "$CURRENT_USER_HOME" fi
#!/bin/sh set -e # 定义清理函数 cleanup_desktop_shortcut() { USER_HOME=$1 if [ -f "$USER_HOME/Desktop/kylin-note.desktop" ]; then rm -f "$USER_HOME/Desktop/kylin-note.desktop" elif [ -f "$USER_HOME/桌面/kylin-note.desktop" ]; then rm -f "$USER_HOME/桌面/kylin-note.desktop" fi } # 遍历所有用户主目录 for USER_HOME in /home/* /root; do if [ -d "$USER_HOME" ]; then cleanup_desktop_shortcut "$USER_HOME" fi done