我对linux命令的新意见.. 我使用Mac Osx Mountain Lion作为我的操作系统和eclipse来编译我的java程序..
问题是我试图在eclipse上以root用户身份运行/编译/调试我的java应用程序。
按照rednammoc中的步骤/回答“ How do I run my application as superuser from Eclipse?“
这个步骤要求我编写一个可执行脚本,让我的jre以root用户身份运行,但是在脚本中有一个部分,它使用命令gksu,我认为只能在linux平台上使用,而不是在Mac Osx上平台,当我运行我的程序时,它显示找不到gksu命令。所以问题是,
我可以在Mac OS上安装gksu吗?
或者是否有任何可用于替换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
答案 0 :(得分:3)
有没有可用于替换gksu的命令?
osascript -e 'on run argv' \
-e 'do shell script (item 1 of argv) with administrator privileges' \
-e 'end run' \
"$jre $args"
答案 1 :(得分:0)
嗯,我刚刚在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"