windows下的一次非常簡單的rails嘗試

  • 問題描述:
    歷史、個人以及種種原因,導(dǎo)致必須要在我的電腦中運行某一個bat,才可以讓其它的同事正常的使用某一個工具。而該工具版本的發(fā)布頻率可以用電動小馬達來形容,總之,就是每天我需要花20%左右的時間來處理這個事情。
  • 迫切需求:
  1. 希望可以讓其它同事遠程運行我電腦中的bat,解放我的時間以便用來做其它更有“意義”的事情。
  2. 希望把bat的運行結(jié)果顯示在網(wǎng)頁上
  3. 希望同時只能處理一個bat的調(diào)用請求
  4. 希望后臺服務(wù)器是靜默運行的
  • 解決思路
    用web來實現(xiàn),即在本地開一個web服務(wù)器,處理其它人的請求(有點殺雞用牛刀的感覺)
  • 需求解決
  1. 先是試著用sinatra,確實更適合,但之前從沒用過,遇到就一點小問題果斷縮了,所以改成用rails(好吧,確實用了把牛刀),通過在controller中調(diào)用系統(tǒng)命令system "xxx.bat",可以解決第一個需求。
  2. system "xxx.bat"的返回結(jié)果是false或者true,無法把bat的運行結(jié)果顯示在網(wǎng)頁上,所以改用%x(xxx.bat),然而發(fā)現(xiàn)返回的內(nèi)容顯示為亂碼,所以還要換編碼,然后返回的內(nèi)容在網(wǎng)頁上顯示還不會自動換行,最后就改成了這樣:%x(xxx.bat).encode('utf-8', 'gb2312').split("\n") ,得到一個數(shù)組,然后在view中處理顯示。
  3. 還需要同時只處理一個bat的調(diào)用請求,在controller中直接用cmd命令判斷system "tasklist|findstr /i /c:\"running_process_name\"",如果返回值為true,那么就返回給view一個提示,不做調(diào)用bat的處理。
  4. 試了很多方法,想讓rails服務(wù)器的窗口在windows下后臺運行。首先是用SrvanyUI來注冊了一個服務(wù),發(fā)現(xiàn)會經(jīng)常性的出錯,原因不明,后來就想靜默啟動,先是創(chuàng)建了一個start.bat用來處理一些意外的情況以及啟動服務(wù)器,然后新建了一個start.vbe的文件,內(nèi)容如下:
Set ws = CreateObject("Wscript.Shell")    
 ws.run "cmd /c start.bat",0   

最后把vbe文件設(shè)置成啟動運行。

算是告一段落。
遺留問題:

  1. 只能等bat運行完以后才能看到運行結(jié)果,不能即時看運行結(jié)果。
  2. rails啟動的還是開發(fā)環(huán)境,不過極小范圍使用,還算可以接受。
  3. 我覺得用sinatra應(yīng)該更好。。。或許python更適合。。。
  4. 建議windows下安裝rails時,建議用gem install rails --no-ri --no-doc,另外安裝rails時需要先安裝devkit這個工具在官網(wǎng)可以下載到。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,667評論 25 709
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,500評論 19 139
  • Ubuntu的發(fā)音 Ubuntu,源于非洲祖魯人和科薩人的語言,發(fā)作 oo-boon-too 的音。了解發(fā)音是有意...
    螢火蟲de夢閱讀 100,577評論 9 468
  • 一溪鵝掌綠中游 兩岸垂楊樂悠悠 獨立風(fēng)光在橋頭 風(fēng)華正茂人依舊 只見灰云滿荒頭 無家人對一魚鷗
    壟上行云閱讀 121評論 0 0
  • 以下幾個錯誤的學(xué)習(xí)方式,你中槍了嗎? 一、嚼貨式學(xué)習(xí) 嚼貨式學(xué)習(xí)的思維方式,大多是在學(xué)校期間建立起來的。在常見的學(xué)...
    靈犀v閱讀 954評論 6 12

友情鏈接更多精彩內(nèi)容