3

引数を受け取り、入力として指定した特定の .txt パスにいくつかのログを書き込むプログラム test.exe があります。このコマンドを追加したかった:

text.exe /r >> textFile.txt 

意味: プロジェクトをビルドし、ログを textFile.txt に書き込みます (存在しません)。と? args[2] = ">>"_ args[3] = textFile.txtその名前をどのように使用できますか?? 混乱している!

編集:デバッグしてローカルを見ていると、表示されるだけです/rが、>> textFile.txtまったく表示されません。コマンドラインからパラメータとして取得するにはどうすればよいですか?

edit2 :

自動的にリダイレクトする必要があることを理解しましたが、それを行っているときに失敗して行に送られます:Console.CursorLeft = 0;つまり、コンソールがないときにカーソルで何かをしようとしています...ただ. TXT

ありがとう!

4

3 に答える 3

7

いいえ、コマンド シェルは に渡すだけ/rtest.exe、自動的に出力を にリダイレクトしますtextFile.txt。あなたのアプリはそれを見ることができません - 少なくとも単純ではありません。

プログラムを標準出力に書き込むだけの場合 (たとえば を使用Console.WriteLine)、その出力はtextFile.txt.

于 2013-03-19T10:39:39.360 に答える
2

">>" は、出力を次のファイルにリダイレクトするようコマンド プロンプトに指示する特別なコマンドとしてコマンド プロンプトで使用されます。

プログラムでこれを処理する必要はありません。通常のConsole.WriteLine()呼び出しを行うだけで、出力がリダイレクトされます。

于 2013-03-19T10:40:27.830 に答える
0

コマンドプロンプトでアプリケーションを実行し、次のようなパラメーターを渡すと:

c:\>test.exe /r >> textFile.txt

コマンド プロンプトは、パラメーター /r のみをプログラムに渡す必要があることを理解しています。>> の後のファイル名は、彼の使用のためです。たとえば、コマンドプロンプトで次のコマンドを実行してみてください

c:\>ipconfig

c:\>ipconfig >> text.txt
c:\>notepad.exe text.txt

最初は出力が画面に表示され、2 回目はコマンド プロンプト自体で指定したファイル名で出力されます。

于 2013-03-19T10:56:33.297 に答える