從哪裡開始建立 CLI 應用程式?

從哪裡開始建立 CLI 應用程式?

使用linux一兩個月後,我知道我現在在做什麼。

當使用任何語言創建程式時,我顯然一直在使用這樣的程式碼:

$ python test.py

因此,如果我想test.py讀取給定的文件,我必須使用:

$ python test.py something.file

我現在想做的,它嘗試創建一個命令行應用程序,這樣我就可以使用

$ myapp something.file

python類似in$ python test.pynanoin 的程序$ nano program.pl

但是我到底要從哪裡開始建立這樣的應用程式呢?網路上的一些拖網搜尋並沒有讓我一無所獲。

如果你能親自告訴我那就太好了,但我會很樂意接受一堆連結。

如果有不只一種方式,我完全開放,我真的不介意使用哪種語言(學習另一種語言的藉口!)或其他什麼。

答案1

您可以透過將 python 腳本設定為可執行 ( chmod +x test.py) 並設定#!/usr/bin/env python第一行來執行它們。一旦你這樣做了,運行test.py args將調用 python 來運行你的腳本。閱讀舍邦如果您想了解更多。

答案2

在 C 語言中,它看起來像這樣:

int main(int argc, char *argv[]) {

argc 是參數的數量。請注意,程序/工具名稱很重要。

參數本身最終出現在參數向量(或陣列)argv 中。

然後是編寫程式碼以按預期方式處理它們的棘手部分。

然後用gcc編譯。您可以使用-o(outfile) 標誌指定程式的名稱。從當前目錄運行該文件,如下所示:(./tool_name input_file_1 ... input_file_n或將其放在寫入時出現的目錄中echo $PATH,然後您可以從任何地方調用它,即不帶點)。

答案3

我用的是Go。它是一種跨平台的編譯語言,具有動態語言的程式設計便利性,並且支援並發和通訊。

我不會再回到 Python,因為用 Go 進行開發非常有趣。

http://golang.org/
https://github.com/languages/Go

這裡有一個簡單的程序,它會取得該命令中使用的參數:

package main

import (
  "fmt"
  "flag"
)

func main() {
  fmt.Println("Arguments: ", flag.Args())
}

http://play.golang.org/p/1dpUT11-cc

相關內容