123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- #!/bin/bash
- # test with sudo runuser -u root bash {script_path}
- set -x
- name=$(whoami)
- echo "start $0 with $name"
- exec="/usr/share/browser/browser" # 使用传入的参数值作为要执行的命令
- echo "run $exec"
- #!/bin/bash
- declare -A params # 关联数组存储参数
- for arg in "$@"; do
- if [[ "$arg" =~ ^--vtm_browser_type=(.*)$ ]]; then
- vtm_browser_type="${BASH_REMATCH[1]}"
- echo "浏览器类型: $vtm_browser_type"
- break # 找到后退出循环
- fi
- done
- if [[ -z "$vtm_browser_type" ]]; then
- echo "未指定浏览器类型"
- fi
- GROUP_NAME=${vtm_browser_type:-default_browser}
- # get env
- pid=$(pgrep startdde)
- # source env from $pid
- # shellcheck disable=SC1090
- . <(xargs -0 bash -c 'printf "export %q\n" "$@"' -- </proc/$pid/environ)
- name=$(ps -o uname= -p "${pid}")
- echo "run in $name"
- FILE="/tmp/$GROUP_NAME.pgid"
- rm -f "$FILE" # 强制删除文件(忽略不存在的情况)
- touch "$FILE" # 创建新文件
- chmod 666 "$FILE" # 可选:设置权限
- if [ $# -eq 0 ]
- then
- runuser -u $name -- bash -c "setsid $exec & sudo echo \$! > /tmp/$GROUP_NAME.pgid"
- else
- runuser -u $name -- bash -c "setsid $exec $* & sudo echo \$! > /tmp/$GROUP_NAME.pgid"
- fi
- PGID=$(cat /tmp/$GROUP_NAME.pgid)
- echo "UOS Browser 已启动:"
- echo "PGID: $PGID"
- exit $?
|