需要帮助创建一个批处理输出CMD输出 - 批
在我下面的代码,我试图找出如何使输出的所有树目录的批处理文件(即CMD输出)需要帮助创建一个批处理输出CMD输出 - 批
md D:\Outputs\%USERNAME%\
cd D:\Outputs\%USERNAME%\
tree C: /f
*output* >> tree.txt
我上面提到的代码只输出荒谬的代码量 - 比单独在CMD中执行相同的命令要长。
(是的,我知道我把d:和C:为不同的驱动器上的d:运行从插入到d一个USB:和我的C:是我的主存储驱动器。)
你能告诉我如何让它输出与CMD大致相同的输出量(我怀疑是不同的目录)。
你能不能也告诉我如何将输出到一个文本文件(即我该使用什么命令,它说*输出*?)
谢谢您的解答。
好吧,有几个选项。 这一个不支持Unicode。
md D:\Outputs\%USERNAME%\
cd D:\Outputs\%USERNAME%\
tree /f C:\ > logfile.txt
这个支持Unicode,因为它输出到剪贴板。但是需要你手动粘贴它。
tree /f C:\ |clip
然后打开Notepad.exe和CTRL + V或右键单击并粘贴。
最后,你可以管ASCII然后隐蔽为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
你应该添加一个尾部反斜杠,'TREE/F C:\> a.txt',否则你不可能得到一个完整的清单根源于C: – Compo
@Compo True,谢谢..快速打字,让我修复。 –
你是什么意思,“比单独在'CMD'中做同样的命令更长?你在'CMD'中做了什么命令,_exactly_,你有什么目标? –
对于* output *'没有“命令” - 它只是'tree C:/ f >> tree.txt'参见[SS64 - Redirection](https://ss64.com/nt/syntax-redirection.html)更多解释 – Stephan
@Stephan是的。唯一的问题是它不会管道Unicode字符。 –