• ベストアンサー

コマンドプロンプトについて

コマンドプロンプトのコマンドで、特定のラインから終わりのラインまでの実行コマンドや実行結果をテキスト等に吐きだすことのできるのコマンドがありましたら教えて下さい。 (SQLで言うところのスプールみたいなものです。) 例 C:\>○○○ ←(開始) C:\>DIR C:\ のディレクトリ 2001/12/18 14:57 <DIR> WINNT 2002/06/26 20:26 <DIR> PrintAgent C:\>●●● ←(終了) 上の例だと、○~●の間の行がテキストに吐き出される形となります。 SQLやUNIXでは可能な操作なので、あるとは思うのですが・・・ もし、ご存知の方いましたら宜しくお願いします!

質問者が選んだベストアンサー

  • ベストアンサー
  • PAPA0427
  • ベストアンサー率22% (559/2488)
回答No.3

#2です。そうですね。 >可能であれば、入力コマンド、実行結果などの一連動作を >テキストに吐き出して 残念ながら、ないですねぇ…。と言いつつ、ありますよ。 Echo文を使ってください。少々泥臭いですが、 「Echo ABC」とすると、表示は「ABC」となります。それをリダイレクションすればいいんです。つまり使用したコマンドなんかを「echo DIR C: >> spool.txt」とすれば良いんですね。 ただし、バッチファイルの先頭に「Echo Off」と入れてください。たまにecho文も一緒に表示されちゃいますので、「echo」を表示させない意味で「echo off」お忘れなく。

その他の回答 (2)

  • PAPA0427
  • ベストアンサー率22% (559/2488)
回答No.2

はじめまして。 DOSの世界では、リダイレクションといいます。 方法は#1さんがご提示された方法です。なおリダイレクションには2通りあります。 例えば、 DIR C: > Spool.txt DIR D: > Spool.txt とすると、結果は「DIR D:」の結果しか残りません。両方残したい場合は「>」を2つ重ねて使用します。 DIR C: > Spoll.txt DIR D: >> Spool.txt これで、両方の結果が残ります。

simosimo
質問者

お礼

ありがとうございました。 リダイレクションについては理解できたのですが、 このリダイレクション機能だと、一つずつの入力コマンドに対する実行結果しか吐き出すことができないようのなのですが…。可能であれば、入力コマンド、実行結果などの一連動作をテキストに吐き出して(今日1日行った操作と結果のログみたいな感じ。)見ることができたら良いのですが、リダイレクションにはそのようなオプション機能があるのでしょうか?

  • taknt
  • ベストアンサー率19% (1556/7783)
回答No.1

それらの内容をバッチファイルに入れて作成します。 なんとか.bat > 出力ファイル名 としてあげれば、出力できます。 ま、このようなパイプ機能を使うしかないのですが・・・。

関連するQ&A

  • MS-DOSプロンプトおよびSQL PLUSにて

    MS-DOSプロンプトで例えばDirコマンド等でDOS窓上に表示された結果を テキストファイルに落としたいのですが、コマンドがわかりません。 それと同じようなもので、OracleのSQL PLUS3.3での結果もテキストに 落としたいんですが方法はないでしょうか? スプールという機能があるようですが、どうも、実行前に 設定しておかなければならないので、勝手がイマイチです。 両方とも何か方法があると思うのですが、 お分かりになる方、片方だけでもいいので、教えていただけますでしょうか?

  • VBAでコマンドプロンプトを呼び出す記述で

    やりたいことはVBAからコマンドプロンプトにてBCP.EXEを呼び出してSQL文を実行することです。 コマンドプロンプトで直接打つと以下のようなコマンドになります。SQL文は長いので省略しました。 ************************* "c:\WINNT\system32\cmd.exe /k" "C:\Program Files\Microsoft SQL Server\80\Tools\Binn\bcp.exe " "SQL文" ************************* これをVBAで以下のように記述しました。 ////////////////////////////////////////////////// stAppName = "c:\WINNT\system32\cmd.exe /k" stAppName = stAppName & "C:\Program Files\Microsoft SQL Server\80\Tools\Binn\bcp.exe " stAppName = stAppName & "SQL文" Call Shell(stAppName, 1) ///////////////////////////////////////////////// 上のような記述だとコマンドプロンプトでは パスのダブクォテーションがなくなり ************************* c:\WINNT\system32\cmd.exe /k C:\Program Files\Microsoft SQL Server\80\Tools\Binn\bcp.exe ”SQL文” ************************* のように実行されBCP.exeのパスが通らず以下のエラーになります。 ///////////////////////////////////////////////// 内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。 ///////////////////////////////////////////////// どなたかVBAでコマンドのパスにダブルクォテーションをつける方法を教えてください。

  • コマンドプロンプト

    VB6.0でコマンドプロンプトを使用し Shell("cmd.exe /c dir")と入力した時に 実行結果を取得する方法は存在するのでしょうか?ちなみに特にdirに限った訳ではありません。

  • コマンドプロンプトについて教えてください

    お手数ですが教えてください。 コマンドプロンプトでSQL*LORDERを起動するバッチを 作成したいのですが以下の条件がうまくいきません。 「ロードするデータ(テキストファイル)が0件(データなしの0KB) であればSQL*LORDERを起動しない」というのはどのようにすれば 解決できますか? コマンドプロンプトのSET文でTYPE文の結果を環境変数に入力することができませんでした。 また、IF文にDIRの結果を記述できませんでした。 データがない場合はSQL*LORDERを失敗させることは出来ましたが 現在入っているデータが初期化されてしまいました。 なにかいい方法はないでしょうか? よろしくおねがいします。

  • コマンドプロンプトの拡張

    UNIX系であればコマンド実行にTeraTermなどを使用していますが、Windowsでコマンド実行する際は標準のコマンドプロンプトを使用しています。 ですがコマンドプロンプトは非常に使いにくいです。 そこでコマンドプロンプトのコンソールを拡張したような何かいいソフトウェアはありませんでしょうか? 尚、Cygwinの存在は知っていますがもう少し手軽に使いたいと考えています。  どうぞよろしくお願いします。

  • コマンドプロンプトについて

    コマンドプロンプトを起動させたときカレントディレクトリが C:>となっているのですが、これを C\Documents and Settings\xxxxx\My Document:>としてコマンドプロンプトを再起動したときにここに初めからカレントディレクトリとして設定したいのですがどうすれば出来るでしょうか。 教えてください

  • コマンドプロンプトのログ記録

    WinXP/Pro 使用です。 コマンドプロンプトのログ記録を、テキストファイルに書き出すために、例えば dir>c:\kiroku.txt とすると、記述されますが、次に(2度同じ)実行をすると.txtが上書き保存されてしまいます 実行の記録をすべて保存するためにはどうすれば良いのかわかりません。(同じコマンドでの実行を全て保存するログファイルを作りたい) よろしくお願いします。

  • C++ で DIR コマンド

    MS-DOSプロンプトで dir と入力すれば、フォルダ内の 様子がMS-DOSプロンプトに表示されるけど、 C++ で、MS-DOSプロンプトで dir と入力したのと同じ 様にするにはどういうプログラムを作ればいいのですか? 別の言い方で書くと、実行すればMS-DOSプロンプトが 起動し、dir と入力されて dirコマンドが実行される というファイルを作るソースが知りたいんです。 dirコマンドが実行される対象となるディレクトリは どこでもいいんです。 C++ のプログラムでも、ディレクトリ構造を出力することが 出来ると思うんだけど、MS-DOSプロンプトでやってみたいんです。 どうしてそんなことがしたいのかというと、C++ が難しそうだから という理由なんです。 例えば、ファイルコピーを自動化するプログラムを作る時、 C++ のプログラムの出力をMS-DOSプロンプトへ渡す方法を知っていれば、 MS-DOSプロンプトでのコピーは copy コピー元 コピー先 という簡単な書式だから、ファイルコピーを自動化するプログラムも 簡単に作れそうだなと思ったんです。

  • Windows2000 コマンドプロンプト

    Unixも全然詳しくないのですが、 ls -l というコマンドでディレクトリ内のファイルを表示させると、オーナーと言うのでしょうか?誰がそのファイルを最終修正したか、というのが表示されると思うのですが、同じ事をコマンドプロンプトで出来ないでしょうか? もし同じようなコマンドがありましたら教えて頂けませんか?色々と調べているのですが見つかりません・・・ よろしくお願いします。

  • コマンドプロンプトでのワイルドカードによるコピー

    こんにちは、よろしくお願い致します。 コマンドプロンプトにおいて Dirというディレクトリの下に、Dir1、Dir2、・・・DirNのようにN個のディレクトリがあったとします。 この時Dir1、Dir2、・・・DirNの直下にあるすべてのファイルだけ、つまり Dir\Dir1\* Dir\Dir2\* ・・・ Dir\DirN\* を、一気にカレントディレクトリにコピーしようとして cp Dir\*\* . としても、上手くいきませんでした。 (Dir1などのディレクトリごとをコピーをするのではない) どうやら、ディレクトリの名前にワイルドカードを使うことができないようでした。 何かいい方法はありませんでしょうか?

専門家に質問してみよう