我有一个Ubuntu 10.4机器上的bash脚本。 它是共享的,我可以从我的win7机器上使用\\LINUX-SERVER\bash_repo\make-live
但是,当我这样做,Windows试图打开它。 这不是我想要的。 我想告诉Ubuntu来执行它。
我实际上希望能够在窗口上创build一个GUI应用程序,用户点击一个button,它会告诉ubuntu机器上的bash脚本执行。
这有可能吗?
你有没有试过PuTTY的制造商plink? http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html上
您应该能够在ubuntu机器上运行脚本,例如:
plink.exe -ssh -pw pass -noagent user@linux-server /path/to/your/script/make-live
正如其他人所build议的,你可以使用ssh来获得一个CLI会话,或者将其包装在一个可访问的程序中,但是你可以通过networking共享来访问它,这意味着Samba已经configuration好并且正在运行 – 而且有许多方法可以让Samba执行文件(如魔术脚本,winpopups,svcctl) rtfm的更多细节。
正如我上面的评论所build议的那样,如果你的ubuntu机器上运行着一个web服务器,你可以从PHP执行你的脚本。
像下面这样的小PHP脚本就足够了:
<?php $output = shell_exec('bash /path/to/your/script'); echo "$output"; ?>
将PHP代码保存在/var/www/exec.php文件中,并将浏览器从任何机器指向URL http://your_ubuntu_machine_ip/exec.php 。
请注意,脚本将作为www-data用户(默认的apache web服务器用户)执行。 如果要使用sudo运行特权命令,则需要使用visudo将www-data用户添加到sudoers文件。
你需要一个像这样的条目:
www-data ALL=NOPASSWD: /path/to/command