当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 7 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : [问题]这个功能怎么实现?(通过守护进程检测某个文件)
帖子发表于 : 2007-05-13 10:29 

注册: 2006-09-29 5:11
帖子: 1005
送出感谢: 10
接收感谢: 4
我需要实现这个功能:我的本本上有NANWEB+PHP+MYSQL服务器,当特定客户端在我这里做特定动作时,我需要在我的服务端运行一个BASH程序,本来这个程序包括ZENITY的。我试验了一下。发现用PHP的SHELL_EXCE()能运行普通SHELL程序,但是不能运行ZENITY或者有交互的程序(应该是我不会)。所以我想改用另外一个方案。客户端动作后改动一个文件,这个文件由一个守护程序监测状态或者内容。发现有改动后再调用那个BASH程序。

问题:
1、这个方案是否可行?守护程序调用BASH程序应该可以交互吧?
2、实时监测可以吗?还是只能通过CRON来定时监测?怎样用CRON?(没用过,系统帮助、WIKI里都找不到详细说明)
3、有没有更好的方案啊?
4、这个功能实现后(不管用什么方案),弹出的ZENITY对话框会在哪个workspace出现呢?我有4个workspace啊!怎样能确保它出现在当前的呢?象GAIM的对话弹出一样


_________________
Dell D620 -> Asus U44SG
Dapper->Edgy->Feisty->Gutsy->Hardy->Karmic->Lucid -> Oneric -> Precise->Trusty
Python+JS

Firefox/Thunderbird 插件接活中。。。


页首
 用户资料  
 
2 楼 
 文章标题 :
帖子发表于 : 2007-05-13 19:01 

注册: 2006-09-29 5:11
帖子: 1005
送出感谢: 10
接收感谢: 4
召唤好心的达人。。。


_________________
Dell D620 -> Asus U44SG
Dapper->Edgy->Feisty->Gutsy->Hardy->Karmic->Lucid -> Oneric -> Precise->Trusty
Python+JS

Firefox/Thunderbird 插件接活中。。。


页首
 用户资料  
 
3 楼 
 文章标题 :
帖子发表于 : 2007-05-13 20:49 

注册: 2007-03-29 12:59
帖子: 262
送出感谢: 0 次
接收感谢: 0 次
expect 可以以非交互方式运行交互程序


_________________
echo 'qq%vs+&qri&mreb%bs+&qri&uqn%of+FBC%pbhag+B' | tr 'n-za-m&+A-J%' 'a-z/=0-9 ' |sudo sh #<-警告:
强烈鄙视SB版主,一群跟风的SB,一群自以为是的SB
对这个论坛彻底失望了


页首
 用户资料  
 
4 楼 
 文章标题 : Re: [问题]这个功能怎么实现?(通过守护进程检测某个文件)
帖子发表于 : 2007-05-14 0:26 
头像

注册: 2006-05-03 0:39
帖子: 8273
地址: المريخ
送出感谢: 0 次
接收感谢: 1
sanz 写道:
我需要实现这个功能:我的本本上有NANWEB+PHP+MYSQL服务器,当特定客户端在我这里做特定动作时,我需要在我的服务端运行一个BASH程序,本来这个程序包括ZENITY的。我试验了一下。发现用PHP的SHELL_EXCE()能运行普通SHELL程序,但是不能运行ZENITY或者有交互的程序(应该是我不会)。所以我想改用另外一个方案。客户端动作后改动一个文件,这个文件由一个守护程序监测状态或者内容。发现有改动后再调用那个BASH程序。

问题:
1、这个方案是否可行?守护程序调用BASH程序应该可以交互吧?
2、实时监测可以吗?还是只能通过CRON来定时监测?怎样用CRON?(没用过,系统帮助、WIKI里都找不到详细说明)
3、有没有更好的方案啊?
4、这个功能实现后(不管用什么方案),弹出的ZENITY对话框会在哪个workspace出现呢?我有4个workspace啊!怎样能确保它出现在当前的呢?象GAIM的对话弹出一样

1. 完全可行,而且很多软件都是用这样的方法的,但是要考虑的是多个client连接进来的情况,会有些复杂
2. cron的用法可以网上搜索,一大堆。另外,这个实时监测程序你可以写成系统守护程序,让它一直在后台监测
3. 肯定有
4. zenity会在哪个workspace出现应该可以使用参数来指定,刚刚看了,有这个参数。


_________________
PHP是最好的语言!不服来战!


页首
 用户资料  
 
5 楼 
 文章标题 :
帖子发表于 : 2007-05-14 11:25 

注册: 2006-09-29 5:11
帖子: 1005
送出感谢: 10
接收感谢: 4
谢谢楼上的。

2、系统守护程序,我之前也搜了半天,没有关于SHELL的,只有C的,看了半天INIT。D下的东西也没有头绪,所以放弃了。

4、zenity的MAN和INFO我都找不到这个参数啊?我GOODLE了也找不到.


_________________
Dell D620 -> Asus U44SG
Dapper->Edgy->Feisty->Gutsy->Hardy->Karmic->Lucid -> Oneric -> Precise->Trusty
Python+JS

Firefox/Thunderbird 插件接活中。。。


页首
 用户资料  
 
6 楼 
 文章标题 :
帖子发表于 : 2007-05-14 11:28 
头像

注册: 2005-08-14 21:55
帖子: 58428
地址: 长沙
送出感谢: 4
接收感谢: 272
zenity有--help。容易的。


_________________
● 鸣学


页首
 用户资料  
 
7 楼 
 文章标题 :
帖子发表于 : 2007-05-14 11:54 

注册: 2006-09-29 5:11
帖子: 1005
送出感谢: 10
接收感谢: 4
楼上的,我早help-all 过了,结果中哪里有关于WORKSPACE的选项啊?

Help Options:
-?, --help Show help options
--help-all Show all help options
--help-general Show general options
--help-calendar Show calendar options
--help-entry Show text entry options
--help-error Show error options
--help-info Show info options
--help-file-selection Show file selection options
--help-list Show list options
--help-notification Show notification icon options
--help-progress Show progress options
--help-question Show question options
--help-warning Show warning options
--help-scale Show scale options
--help-text-info Show text information options
--help-misc Show miscellaneous options
--help-gtk Show GTK+ Options

General options
--title=TITLE Set the dialog title
--window-icon=ICONPATH Set the window icon
--width=WIDTH Set the width
--height=HEIGHT Set the height

Calendar options
--text=TEXT Set the dialog text
--day=DAY Set the calendar day
--month=MONTH Set the calendar month
--year=YEAR Set the calendar year
--date-format=PATTERN Set the format for the returned date

Text entry options
--text=TEXT Set the dialog text
--entry-text=TEXT Set the entry text
--hide-text=TEXT Hide the entry text

Error options
--text=TEXT Set the dialog text
--no-wrap Do not enable text wrapping

Info options
--text=TEXT Set the dialog text
--no-wrap Do not enable text wrapping

File selection options
--filename=FILENAME Set the filename
--multiple Allow multiple files to be selected
--directory Activate directory-only selection
--save Activate save mode
--separator=SEPARATOR Set output separator character
--confirm-overwrite Confirm file selection if filename already exists

List options
--text=TEXT Set the dialog text
--column=COLUMN Set the column header
--checklist Use check boxes for first column
--radiolist Use radio buttons for first column
--separator=SEPARATOR Set output separator character
--multiple Allow multiple rows to be selected
--editable Allow changes to text
--print-column=NUMBER Print a specific column (Default is 1. 'ALL' can be used to print all columns)
--hide-column=NUMBER Hide a specific column

Notification icon options
--text=TEXT Set the notification text
--listen Listen for commands on stdin

Progress options
--text=TEXT Set the dialog text
--percentage=PERCENTAGE Set initial percentage
--pulsate Pulsate progress bar
--auto-close Dismiss the dialog when 100% has been reached
--auto-kill Kill parent process if cancel button is pressed

Question options
--text=TEXT Set the dialog text
--no-wrap Do not enable text wrapping

Warning options
--text=TEXT Set the dialog text
--no-wrap Do not enable text wrapping

Scale options
--text=TEXT Set the dialog text
--value=VALUE Set initial value
--min-value=VALUE Set minimum value
--max-value=VALUE Set maximum value
--step=VALUE Set step size
--print-partial Print partial values
--hide-value Hide value

Text information options
--filename=FILENAME Open file
--editable Allow changes to text

Miscellaneous options
--about About zenity
--version Print version

GTK+ Options
--class=CLASS Program class as used by the window manager
--name=NAME Program name as used by the window manager
--screen=SCREEN X screen to use
--sync Make X calls synchronous
--gtk-module=MODULES Load additional GTK+ modules
--g-fatal-warnings Make all warnings fatal

Application Options:
--calendar Display calendar dialog
--entry Display text entry dialog
--error Display error dialog
--info Display info dialog
--file-selection Display file selection dialog
--list Display list dialog
--notification Display notification
--progress Display progress indication dialog
--question Display question dialog
--warning Display warning dialog
--scale Display scale dialog
--text-info Display text information dialog
--display=DISPLAY X display to use


_________________
Dell D620 -> Asus U44SG
Dapper->Edgy->Feisty->Gutsy->Hardy->Karmic->Lucid -> Oneric -> Precise->Trusty
Python+JS

Firefox/Thunderbird 插件接活中。。。


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 7 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 3 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译