HOWTO · Batch

在批處理指令碼中使用 //P 和 SET 命令

本教程將展示 SET //P 在批處理指令碼中的使用。

SET 是我們想要宣告一個變數併為其賦值時使用的變數,但我們有時會在此命令中使用 /P。本文將展示使用 /PSET 命令的目的。

在批處理指令碼中使用 /PSET 命令

眾所周知,在 Batch Script 中宣告變數的一般格式是:

set VARIABLE_NAME=VALUE

這樣,我們就可以直接宣告一個變數並給它賦值。

使用/P,你將能夠從使用者輸入中為變數賦值。那麼這個命令的一般格式將如下所示:

SET /P VARIABLE_NAME=

現在,如果你想指導使用者他們需要輸入什麼樣的值,你可以在其上新增說明性字串,例如:

set /P VARIABLE="INSTRUCTIONAL STRING"

讓我們看一些例子來說明清楚。

在此示例中,我們將使用者的數值作為年齡並將其顯示為輸出。我們將包含一個指導字串 Enter your age: 來指導使用者他需要提供什麼樣的輸入。

之後,我們將獲取該使用者輸入並將其分配給變數 age。最後,我們將使用 echo 命令將年齡顯示為輸出。

看看我們的示例及其輸出。

@echo off
set /p age="Enter your age: "
echo Your age is: %age%
pause

輸出:

Enter your age: 23
Your age is: 23

現在,我們將討論在 SET 命令中使用 /P 的另一個示例。

此示例將兩個變數作為輸入,將它們相加,並將結果顯示為輸出。在這裡,我們將使用兩個帶有/PSET 命令,它從使用者那裡一個接一個地輸入兩個數字。

然後我們將使用另一個帶有/ASET 命令,在對從使用者獲取的兩個變數求和後,在變數 c 中分配一個值。這裡的 /A 表示它是一個算術運算。

最後,我們將結果顯示為輸出。讓我們看一下我們的示例和輸出。

@echo off
set /p a="Enter first number: "
set /p b="Enter second number: "
set /a c=%a%+%b%
echo Sum is: %c%
pause

程式的輸出將如下所示。

輸出:

Enter first number: 12
Enter second number: 12
Sum is: 24

請注意,我們使用此命令顯示的程式碼是用 Batch 編寫的,並且僅適用於 Windows CMD 環境。