コマンドラインツール

commandlinetool.png

作る

コマンドライン引数を仕分けする方法

#include <unistd.h>
int main(int argc, char * const argv[]) {
    int ret=getopt(argc, argv, "b:");//-b の引数を取る
    cout<<"ret:"<<ret<<endl;
    }

第3引数の使い方
たとえば

-f ファイル名

というコマンドライン引数にしたいなら

while ((ch = getopt(argc, argv, "f:")) != -1) {
        switch (ch) {
            case 'f':
               cout<<"-f :"<<optarg<<endl;

-fの後にどんな文字列が来てるのかはoptargというグローバル変数で得られます。
optarg#include <unistd.h>した時点で使えるようになっています。

後ろに文字列の付いていないコマンド引数の場合
たとえば
> -x -y -z
という引数にしたいなら

getopt(argc, argv, "xyz"))

と書きます。アルファベットの後に:をつけないようにします
Bibliography
3. GNU-Table of long option….GNUのコマンドラインツールで使用されているオプション。これを参考にすると良いらしい

command main

サポートサイト Wikidot.com commandmain