变量如何在其他文件中更改?批处理文件

时间:2016-03-29 12:12:57

标签: batch-file cmd batching

所以这就是我需要的,我有两个文件,第一个是这个: 1)

set idVendor=3edd

在第二个文件中是这样的: 2)

   write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor %idVendor%
write /sys/class/android_usb/android0/idProduct 4EE2
write /sys/class/android_usb/android0/functions mtp,adb
write /sys/class/android_usb/android0/iManufacturer ${ro.product.manufacturer}
write /sys/class/android_usb/android0/iProduct ${ro.product.model}
write /sys/class/android_usb/android0/iSerial ${ro.serialno}

所以我想用3edd替换%idVendor%,但在另一个文件中

注意: 另一个文件不是bat文件

2 个答案:

答案 0 :(得分:0)

如果您不关心在结果中保留空格,您只需使用cmd来解释替换。

C:>type file1.bat
SET "idVendor=3edd"

FOR /F "usebackq tokens=*" %%s IN (`TYPE file2.txt`) DO (
    CMD /C ECHO %%s
)

答案 1 :(得分:0)

我正在寻找的答案就是这个

@echo off &setlocal
set "search=%~1"
set "replace=%~2"
set "textfile=Input.txt"
set "newfile=Output.txt"
call repl.bat "%search%" "%replace%" L < "%textfile%" >"%newfile%"
del "%textfile%"
rename "%newfile%" "%textfile%"

非常感谢我自己,我认为大声笑:D