http方式更新svn
目的:希望能够通过浏览器对某个linux服务器做控制。
方法:
首先要安装ruby,最简单的是yum install ruby
然后编辑一个文件放到任意目录下或者/root下
使用ruby里的webrick,示例如下:
#!/usr/bin/env rubyrequire 'webrick'include WEBricks = HTTPServer.new( :Port => 2005 #http监听端口)class HelloServlet < HTTPServlet::AbstractServlet def do_GET(req,res) #要http输出到浏览器 res.content_type='text/html; charset=UTF-8' # 重定向输出是很重要的操作 filename='/home/svn.log' command='/usr/local/svn/bin/svn checkout svn://221.222.222.222/loupa /loupa > ' + filename system(command) #这个例子是进行一个svn更新的操作,想要搞什么操作都放system里面 ss='' File.open(filename,'r').each {|line| ss = ss+ line+'<br>' } # system('rm -rf /err') # 甚至可以做这样的操作,可以放多个 # 以下是显示给操作者看的 res.body=%{ <html> <head> <title>web操作</title> </head> <body> #{ss} <br><br><br> web操作完毕<br> </body> </html> } endends.mount('/', HelloServlet) #设定url,也可以是/svn等,客户端访问跟着变trap("INT"){s.shutdown}s.start