2017-10-06 63 views
-1

我是新来的批处理脚本,我正在尝试新的东西。如何使用批处理脚本将内容添加到具有各种路径的文本文件中?

我有一个文件sample.txt。它具有不同的路径,如下所示:

C:\Users\admin\Desktop\Sample\New Text Document1.txt 
C:\Users\admin\Desktop\Sample\New Text Document2.txt 
C:\Users\admin\Desktop\Sample\New Text Document3.txt 
C:\Users\admin\Desktop\Sample\New Text Document4.txt 

我想在文件名之前在此路径中添加文本。

我想要的文件看起来像这样:

C:\Users\admin\Desktop\Sample\Backup Folder\New Text Document1.txt 
C:\Users\admin\Desktop\Sample\Backup Folder\New Text Document2.txt 
C:\Users\admin\Desktop\Sample\Backup Folder\New Text Document3.txt 
C:\Users\admin\Desktop\Sample\Backup Folder\New Text Document4.txt 
+1

您将使用'FOR'命令,并使用命令修饰符分裂除了文件路径文件名。你可以通过打开cmd提示符并输入:FOR /?'来阅读它。阅读关于修饰符的最后一节。 – Squashman

+0

我认为它可能看起来像这样 - FOR/F“delims = /”%% A IN(Sample.txt)Do(@echo +“BackUp Folder /”+ * .txt)但它需要更多 –

+1

否不要使用'DELIMS'选项。使用修饰符。 '%〜dpA'和'%〜nxA'。 delims选项应该是空的。 'FOR/F“DELIMS =”' – Squashman

回答

1

试试这个:

@echo off 


set "file=sample.txt" 
set "add_=Backup Folder\" 

break>temp 
for /f "usebackq tokens=* delims=" %%# in ("%file%") do (
    echo %%~dp#%add_%%%~nx# 
)>>temp 

move /y temp "%file%" 
+0

为什么混淆它们,那么他们通过使用#作为FOR你和我知道它可以完成,但是一个新的人可以阅读命令的帮助,它的字面意思是变量的字母“ – Squashman

+0

@Squashman - 我习惯了它,有时我正在使用它机智hout在批处理脚本中考虑新手。 – npocmaka

相关问题