gksu在Mac OSX上(gksu on Mac Osx)

2019-10-29 17:21发布

IM向linux命令新..即时通讯使用的是Mac OSX山狮作为我的操作系统和Eclipse来编译我的java程序..

问题是,我尝试运行/编译/调试我的Java应用程序的日食root用户。

继步/从答案rednammoc在“ 如何运行我的应用程序从Eclipse的超级用户? ”

步骤要求我写一个可执行的脚本,使我的JRE以root用户运行,但在脚本中存在这样的情况,它使用的命令gksu,我以为仅适用于Linux平台,而不是在Mac OSX平台,当部分我跑我的程序,这表明没有发现gksu命令。 所以,问题是,

  1. 可我一些如何在我的Mac OSX安装gksu?

  2. 或者是有,我可以用它来代替gksu任何命令?

下面是链接复制的脚本,

#!/bin/bash
# file:  /usr/lib/jvm/java-6-openjdk/jre/bin/java
# descr: Starter for jdk. Runs jdk as root when 
#        cmd-line-arg "--run-as-root" is specified.
#
jre="/usr/lib/jvm/java-6-openjdk/jre/bin/java.ori"
run_as_root=false
args=

# Filter command-line argument
for arg in "$@"
do
  case "$arg" in
  --run-as-root)  run_as_root=true
                  ;;
  *)              args="$args $arg"
                  ;;

  esac
done

# Remove leading whitespaces
args=$(echo $args | sed -e 's/^[ \t]*//')

if $run_as_root
then
  echo "WARNING: Running as root!"
  gksu "$jre $args"
else
  $jre $args
fi

Answer 1:

在那里,我可以使用,以取代gksu任何命令?

osascript -e 'on run argv' \
          -e 'do shell script (item 1 of argv) with administrator privileges' \
          -e 'end run' \
          "$jre $args"


Answer 2:

嗯,我刚刚发现这个在在http://pastebin.com/dhbU57uE还没有尝试过,但!

#!/bin/bash
# file:  /usr/lib/jvm/java-6-openjdk/jre/bin/java
# descr: Starter for jdk. Runs jdk as root when 
#        cmd-line-arg "--run-as-root" is specified.
#
jre="/usr/lib/jvm/java-6-openjdk/jre/bin/java.ori"
run_as_root=false
args=

# Filter command-line argument
for arg in "$@"
do
  case "$arg" in
  --run-as-root)  run_as_root=true
                  ;;
  *)              args="$args $arg"
                  ;;

  esac
done

# Remove leading whitespaces
args=$(echo $args | sed -e 's/^[ t]*//')

if $run_as_root
then
  echo "WARNING: Running as root!"
  gksu "$jre $args"
else
  $jre $args
fi

osascript -e 'on run argv' 
          -e 'do shell script (item 1 of argv) with administrator privileges' 
          -e 'end run' 
          "$jre $args"


文章来源: gksu on Mac Osx