2017-09-13 1 views
2

を(つまり、CMDで出力)に、cmd出力出力バッチの作成についてのヘルプが必要です - 、私はすべてのツリーのディレクトリを出力するバッチファイルを作成する方法を把握しようとしています以下の私のコードでは、バッチ

md D:\Outputs\%USERNAME%\ 
cd D:\Outputs\%USERNAME%\ 
tree C: /f 
*output* >> tree.txt 

上記のコードは、ばかげた量のコードを出力します。CMDだけで同じコマンドを実行するよりも時間がかかります。

(:およびC:そして、はい、私は知っている私はDを置くなど、異なるドライブをDを:実行をDに差し込むUSBから:と私のC:私のメインのストレージドライブです。)

  1. CMDがおおよそ同じ量の出力を出力するようにする方法を教えてください(別のディレクトリと思われます)。

  2. あなたも(*出力*それが言うところすなわち、どのようなコマンド私が使用していますか?)どのようにテキストファイルに出力を入れて教えてもらえます

は、あなたの答えをいただき、ありがとうございます。

+0

「CMDのみで同じコマンドを実行するよりも長いこと」とはどういう意味ですか?あなたは 'CMD'でどんなコマンドを出していますか?_exactly_、あなたは何を見ていますか? –

+0

'* output *'の "コマンド"はありません。 'tree C:/ f >> tree.txt'のための[SS64 - Redirection](https://ss64.com/nt/syntax-redirection.html)を参照してください。詳細な説明 – Stephan

+0

@Stephanはい。問題はUnicode文字をパイプしないことだけです。 –

答えて

2

さて、いくつかのオプションがあります。 これはUnicodeをサポートしていません。

md D:\Outputs\%USERNAME%\ 
cd D:\Outputs\%USERNAME%\ 
tree /f C:\ > logfile.txt 

これはクリップボードに出力するので、これはUnicodeをサポートしています。ただし、手動で貼り付ける必要があります。

tree /f C:\ |clip 

次に、Notepad.exeとCTRL + Vを開くか、右クリックして貼り付けます。

最後にあなたがパイプアスキー、スクリプトで次のようにUnicodeにひそか可能性が...

md D:\Outputs\%USERNAME%\ 
cd D:\Outputs\%USERNAME%\ 
tree /f C:\ > a.txt 
cmd /u /c type a.txt > output.txt 
del /Q a.txt 

は、それからちょうど一番下にこれを追加することによって、手動または同じスクリプト経由で開きます。

notepad output.txt 

最後に、私はちょうどより多くの理にかなっていると少ないエラーが発生し、ディレクトリはそれを毎回作成する前に存在するかどうかをチェックお勧めします。

if not exist "C:\Outputs\%USERNAME%" mkdir "C:\Outputs\%USERNAME%" 
cd D:\Outputs\%USERNAME%\ 
tree /f C:\ > a.txt 
cmd /u /c type a.txt > output.txt 
del /Q a.txt 
+0

'TREE/F C:\> a.txt'の後ろにスラッシュを付けてください。そうでなければ、C: – Compo

+0

@Compoに根ざした完全なリストを得ることはまずありません。 –

関連する問題