
avidemux、handbrake、winrarなど
いくつかのソフトで、GUI版だけでなく
コマンドライン版のソフトがアップされているものがあります。
これの意義を教えてください。
これは、シェルスクリプトやそのほかプログラミング言語を使って
自分の好きなようにファイルやフォルダーを読み込んで処理を施せるようにするためかと思っていたのですが
例えば、avidemuxの場合だと
GUI版が avidemux
コマンドプロンプト版が avidemux_cl
なのですが、
avidemux_clを指定せず、avidemuxを指定しても
シェルスクリプトで、プログラムを実行することができます。
GUI版の方が処理の進行などをグラフィカルで確認できるため、利点があります。
それだとコマンドプロンプト版の存在意義がないように思うのですが。
GUI版を使わずに
コマンドプロンプトだけで終始していたほうが処理が高速になるから
こちらを使う人がいるのでしょうか?
No.5ベストアンサー
- 回答日時:
お、おう…
> XP用に作られているGUIアプリは、多くの場合、VISTA、Win7、Win8では動作しません
> VISTA用に作られているGUIアプリは、多くの場合、Win7、Win8では動作しません
> Win7用に作られているGUIアプリは、多くの場合、Win8では動作しません
> 「DOS互換アプリケーション」
>「DOS互換アプリケーション」にする事により「どのバージョンのWindowsでも動作可能」
ここはひどいインタネットですね!
> コマンドプロンプト版の存在意義
・昔からのパソコンユーザーのジジイがなんとなく安心する
・標準入出力を使った結果の取得を含む操作が可能になる
→作業の自動化とか、自分のアプリケーションから利用するなどがGUI版に比べ容易になる
標準入力・標準出力いうのはほとんどの言語・OSで使え、一度覚えてしまうと学習コストがGUIに比べて低い(と年寄りが感じている)
・文字を打ち込むだけなので正しいコマンドを提示してあげればアホでも操作できる
→テレホンセンターでの問い合わせやメールでの問い合わせに対し、操作法を指示しやすい
おそらく、ここのような図よりも文字ベースでコミュニケーションを取る事が多い所でもコマンド操作の方が指示しやすい(と年寄りが思っている)
> 処理が高速になる
今時そんなことは無いと思います。
No.6
- 回答日時:
デバッグするときは肝心な部分に集中したい。
たいていの場合、話がより単純です。
デバッグでも、テストでも、開発でも、GUIよりコマンドライン・プログラムの方が。
機能をライブラリ化しておけば、なおさら。
コマンドライン版を直せば済む話ですし、GUIの処理はあちこちに跳び回るので。
ユーザは、自分の好きな方を使えばいいと思います。
No.3
- 回答日時:
GUIとかどう考えても邪魔でしょう。
バックグラウンドでバッチ処理しなからブラウザとか使ってるときに
見る必要が無いウィンドウがたびたび出てくるとか、絶対いらいらする。
ツールによっては、そのウィンドウにキャンセルボタンとかうっかり押したらまずいボタンまであるし。
> GUI版の方が処理の進行などをグラフィカルで確認できるため、利点があります。
それは人間が確認できるわけであって、
ウィンドウなんか出されても他のプログラムからそれを監視するのは難しくて
全然利点にならない、というか人間用のウィンドウなんて邪魔。
処理結果は標準出力とかに出してくれれば、
ログとして残すとかがやりやすい。
No.2
- 回答日時:
>GUI版の方が処理の進行などをグラフィカルで確認できるため、利点があります。
だけど、GUI版には「Windowsのバージョンが変わると起動さえしなくなる場合がある」と言う欠点があります。
XP用に作られているGUIアプリは、多くの場合、VISTA、Win7、Win8では動作しません(セキュリティ強化により起動できなかったり、DLLやAPIの仕様変更で起動できなかったりする)
VISTA用に作られているGUIアプリは、多くの場合、Win7、Win8では動作しません(セキュリティ強化により起動できなかったり、DLLやAPIの仕様変更で起動できなかったりする)
Win7用に作られているGUIアプリは、多くの場合、Win8では動作しません(セキュリティ強化により起動できなかったり、DLLやAPIの仕様変更で起動できなかったりする)
しかし「ファイルを読んで、ファイルに書き出す」のが処理のメインになるアプリケーションであれば「どのWindowsにも必ず備わっている、必要最低限の、ファイルアクセス機能のみ」さえ動けば良いです。
つまり、コマンドプロンプトで動く「DOS互換アプリケーション」にする事により「どのバージョンのWindowsでも動作可能」にする事が出来ます。
簡単に言うと「DOS互換アプリケーション(コマンドプロンプト版)は、Windowsのバージョンに依存しないで動作可能」なのです。
GUI版しか存在しないアプリを使っていて、新しいWindowsが出回り始めてから、アプリの開発者が「新しく出たWindowsには対応しません。対応するつもりはありません」って言ったらどうします?
そうなったら、そのアプリの為だけに、古いWindowsを使い続けるハメになります。
もし、その古いWindowsが、XPみたいに「MSはサポート終了します。脆弱性には対処しません」って事になったら?
パソコンが壊れて新しいパソコンにしてみたら、その新しいパソコンに使える「古いWindows用のデバイスドライバが提供されてない」って状態になって、古いWindowsがインストール出来ないって事が発覚したら?
このように「GUIに頼ったもの」ってのは「誰かが、どこかで、何かのサポートを打ち切った瞬間、使い物にならなくなる」のです。
「グラフィカル」は確かに「視認性が良い」ですが、グラフィカル自体が「足かせ」になることもあるのです。
「ファイルを読んで、ファイルを書き出す」と言うのがメインのソフトでは「グラフィカルもGUIも無い方が、汎用性が高くなる」のです。
No.1
- 回答日時:
画面の描画が無い分高速に処理できるという意味もあるでしょうが、沢山のファイルをバッチ処理で勝手に変換して欲しいときなどはコマンドプロンプト版を使わないと自動化がしにくいからでしょう。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
フレームワーク「4.8.1」で、[S...
-
Vba アプリケーションが立ち上...
-
INIファイルとAPP.CONFIGについて
-
C# の OpenFileDialog
-
vb6で異なるのプロジェクト間で...
-
2重起動の防止
-
コンソールアプリケーションの...
-
VBSでのSendKeysでの画面の最小化
-
Accessフォームからの外部アプ...
-
VB6の強制終了について
-
httpd.pidって何ですか?
-
非同期処理の終了監視
-
ダイアログ中の下線付きテキス...
-
イラストレーターCS4のシリアル...
-
Macターミナルで実行中のプログ...
-
バックグラウンドのプロセスの...
-
メモリが不足しています(VBA)
-
C言語で、メモリを解放しないで...
-
VBSの処理中一旦処理を止めて再...
-
C# シリアル通信でデータ受信...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
フレームワーク「4.8.1」で、[S...
-
VBSでのSendKeysでの画面の最小化
-
Vba アプリケーションが立ち上...
-
コンソールアプリケーションの...
-
自分自身を更新するプログラム
-
Accessフォームからの外部アプ...
-
イラストレーターCS4のシリアル...
-
Windowsプログラムのビジー状態...
-
VB.NETでフォームアクティブの...
-
WSH(VBScript)でアプリケーショ...
-
C#でGUI・CUIの判断する仕方を...
-
VB.NETでMessageBoxを表示した...
-
Console Applicationをタスクト...
-
pccNTmon.exeとntrtscan.exeの違い
-
初回接続の遅い原因について
-
OSによるWinExecの動...
-
vb6で異なるのプロジェクト間で...
-
アプリケーションをVBS(WSH?)で...
-
SYSTEM権限でプロセス機動
-
MFCアプリケーションでの終了コ...
おすすめ情報