本文首先發布在
betty
tool
command
ruby
betty 是乙個用ruby實現的非常簡單,好玩的智慧型化命令列提示工具。主要解決的問題是將英文翻譯成機器可以理解的unix命令。在它的官方文件中,我們可以找到詳細的說明和解釋。本文的主要目的在於根據betty為基礎,定製我們自己的"英語命令"。
整個程式的入口是main.rb檔案,它的主要功能是
接受命令行引數
從lib/*.rb
裝載所有可以執行的檔案
匹配尋找可以執行的命令
執行命令
如果你安裝成功了,你會發現在~/.bash_profile 或者其他的系統配置檔案中,有一行類似於如下的**從以上的分析可以看出,betty 不負責具體的命令執行,只負責將我們通俗的語言(比如英語)轉換成可以被系統執行的命令。
alias betty="***/betty/main.rb"
lib/*.rb
中的檔案,負責
目標:
想實現乙個提示命令,比如輸入betty give me a help
就會在螢幕上顯示所有的命令提示
根據以上得分析,我們發現實現自己的executor非常簡單,基本的步驟如下
在lib中定義乙個新的module
定義乙個類方法interpret(command)
如果匹配command
,則返回response
將executor
註冊到$executors
中
具體的**請參考
betty真是乙個好玩的工具,實現自己的特定的命令也特別的簡單。而且,這個專案還可以往更複雜的方向發展。比如類似於siri的語音提示,還有我們也可以定製自己的中文提示。由於這個專案才剛剛開始,所以還是有很多的不足之處,比如我們在處理特定的語音的時候,用的是正規表示式,還不夠智慧型,邏輯也特別簡單,如果想定製自己的需求,需要使用者自己實現更多的細節。但整體來說,這是乙個非常棒的工具!
命令列工具
在wince6.0 中,在vs2005 的 build 選單中,有乙個 advanced build commands 其中有很多編譯選項 sysgen 相當於執行命令 blddemo q 一般第一次編譯或者是 改變了 catalog 中的item 的時候,就用這個了。clean sysgen 相當...
命令列工具
執行 scws h 可以看到詳細幫助說明。usage scws options i input o output i string file 要切分的字串或檔案,如不指定則程式自動讀取標準輸入,每輸入一行執行一次分詞 o file 切分結果輸出儲存的檔案路徑,若不指定直接輸出到螢幕 c charse...
c mysql命令列 mysql 命令列工具
1 mysql命令選項 2 mysql命令 3 mysql日誌 4 mysql服務端幫助 5 執行mysql指令碼 6 使用技巧 mysql是乙個能夠編輯輸入行的簡單sql shell,支援互動式和非互動式訪問。使用互動式時,查詢結果以ascii表的格式展示。使用非互動式時,查詢結果以製表符分隔的格...