2013-04-09 32 views
2

如何使用=創建一個單獨的文件,而不是別的(如果使用XVI.exe打開文件,只能找到3D(hexa)字符,不能使用CR或不使用LF字符)。如何僅在批處理文件中寫入char =而沒有任何行結束符?

沒有行結束呼應的常用方法是

set /p ==<nul 

,但它不與工作組,爲=被視爲一個特殊字符。

我已經試過了,但它不工作。

set /p =^=<nul 
set /p =^^=<nul 
set /p =^^^=<nul 
set /p =^^^^=<nul 

請記住在回答之前:文件中只有一個字符=,存在挑戰!

謝謝,

ZeroDegres。

+0

好問題,我很難過。這個問題有實際應用嗎?還是純粹的理論?如果你不介意包含一些vbscript或powershell的批處理文件,當然有許多簡單的解決方案,但我認爲你想要堅持直批。 – 2013-04-09 15:49:31

+0

更明顯的解決方案是直接將它寫入文件,但你說得對,我只是把它寫入一個腳本。謝謝 ! – 2013-04-10 06:31:33

回答

3

試試這個:

@echo off 
setlocal EnableDelayedExpansion 
call :createSub 
> txt.tmp (echo(=!sub!) 
copy txt.tmp /a txt.txt /b > nul 
del txt.tmp 
exit /b 

:createSub 
copy nul sub.tmp /a > nul 
for /F %%a in (sub.tmp) DO (
    set "sub=%%a" 
) 
del sub.tmp 
exit /b 

=txt.txt

source

+3

+1大聲笑 - 我試圖找出你是如何解決它,然後我按照鏈接,看到它是從我自己 – jeb 2013-04-09 17:05:24

+0

優秀!它正在工作。非常感謝你,對此,我今天將完成我的二進制作者:) – 2013-04-10 06:30:12

+0

請將此標記爲「已回答」。謝謝! – Endoro 2013-04-10 06:36:26

相關問題