簡體   English   中英

Windows 命令提示符:如何傳遞多行字符串參數

[英]Windows Command Prompt: How to pass multi-line string parameters

我有一個接受字符串參數的程序。 我創建了一個執行程序的批處理文件和一個多行字符串參數。 在多行字符串之后我還有第二個參數。

C:\>MyProgram "This is a
multiline text" parameter2

當我運行它時,命令中只包含第一行字符串,隨后的行和第二個參數將被忽略。 有沒有辦法傳遞多行字符串參數?

您的問題與 - Windows:如何在命令提示符下指定多行命令重復

在 Windows 命令提示符中,^ 用於轉義命令行上的下一個字符。

例如,(更多?是一個提示):

C:\>cd "c:\Program Files" ^
More? "\Common Files"

C:\>MyProgram "This is a " ^  
More? "multiline text" parameter2

此例程將多行寫入F:\\Backup_Info驅動器和目錄中的文本文件F:\\Backup_Info 請注意,它將使用空格然后^符號給出一個行空間,如圖所示,每個語句之間需要一個行空間:

(echo To Do is to Understand^

Who Dares Wins^

 ^

Baz) > F:\Backup_Info\ASM.txt

您可以將 ^ 的輸出保存為變量

set br= ^
<</br (newline)>>
<</br>>

例子:

@echo off
setlocal enableExtensions enableDelayedExpansion
rem cd /D "%~dp0"
set br= ^


rem br, can't be saved to a var. by using %..%;


set "t=t1!br!t2!br!t3"

for /f "usebackq tokens=* delims=" %%q in ('!t!') do (
    echo %%q
)


:scIn
rem endlocal
pause
rem exit /b

; 輸出:

t1
t2
t3
Press any key to continue . . .

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM