溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

dos中怎么定義和引用變量

發(fā)布時間:2021-07-29 15:17:19 來源:億速云 閱讀:216 作者:Leah 欄目:開發(fā)技術(shù)

dos中怎么定義和引用變量,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

變量定義和引用

1.MS-DOS shell 對變量、命令、命令行參數(shù)的大小寫區(qū)分嗎? 不區(qū)分
2.如何定義一個(環(huán)境)變量 ?

SET <variable>=[<value>]
如果 <value> 是空字符串,則取消變量的定義,變量的值用雙引號或空格結(jié)束。引號如果沒有結(jié)束,則默認范圍到行尾。

3.如何定義一個局部(環(huán)境)變量?

代碼如下:


SETLOCAL
  SET <variable>=[<value>]
ENDLOCAL


  變量 <variable> 的值會在 ENDLOCAL 后恢復到 SETLOCAL 以前的值

4.如何使用 MS-DOS 腳本的調(diào)用參數(shù)?

ECHO %<n>
N 的范圍為 0-9 , %0 為文件名, %1-%9 為參數(shù),每次調(diào)用腳本最多支持 9 個參數(shù)
ECHO %*
  %* 代表所有傳入的參數(shù),即 %1-%9 ,并且包括其中的空白符
  另外,調(diào)用參數(shù)是 %0-%1 是只讀的,不可以重新賦值,否則程序掛起。

5. MS-DOS 如何分割腳本參數(shù)?

首先 MS-DOS 的解釋器 CMD 會將命令提示符后的命令行中的有定義的環(huán)境變量全部展開(無定義的不變)。
然后,處理由 ^ 定義的轉(zhuǎn)義字符。
最后,用雙引號( " " )、逗號( , )、分號(;)和空白符分割,并將第一個分割后的部分用作命令名,其他的作為參數(shù),所有的參數(shù)中都包含各自的雙引號,然而命令名中的雙引號在調(diào)用命令時沒有影響。逗號和分號以及空白符則不包含在分割的各部分中。

注:變量在腳本中只展開一次,不會循環(huán)展開。

6.如何對作參數(shù)的文件名進行操作?

ECHO %~[<format>]<n>

<format>的取值如下:

%~<n>

擴展%<n>,然后去除雙引號(" "

%~f<n>

擴展%<n>, 取文件的全路徑/文件名/擴展名,純字符串處理

%~d<n>

擴展%<n>, 取文件的驅(qū)動器名

%~p<n>

擴展%<n>, 取文件的路徑名

%~n<n>

擴展%<n>, 取文件名,不包括擴展名

%~x<n>

擴展%<n>, 取文件的擴展名

%~s<n>

擴展%<n>, 只包括短文件名的全路徑/文件名/擴展名

%~t<n>

擴展%<n>,  文件的最后修改時間

%~z<n>

擴展%<n>, 文件的大小

%~a<n>

擴展%<n>, 文件的屬性


%~$<var>:<n>

<var>一般是環(huán)境變量PATH, 從中尋找第一個匹配的文件名是%1的文件的全路徑,如果找不到則展開為空


以上參數(shù)可以組合,其格式是:

%~[{f|d|a|z|s|n|x|t|p}][$<var>:]<n>

7.如何操縱讀取每個命令行參數(shù)?

SWITCH [/<n>]

從第n個參數(shù)開始前移,第n個參數(shù)被溢出(n默認為0),最后一個字符串被移入空值。這是使腳本文件接受10個以上參數(shù)的方法,但是該方法不可逆。Switch命令不影響%*的值。

8.如何查看一個命令的幫助信息?

<command> /?

通用的方法是用/?參數(shù),因此如果想編寫符合這一慣例的腳本程序,也需要檢查傳入的第一個參數(shù)是否為/?

HELP <command>

9.如何引用環(huán)境變量?

%<variable>%

10.如何查看環(huán)境變量

SET [<search-string>]

如果<search-string>為空,顯示所有環(huán)境變量的定義,否則只顯示以<search-string>開頭的環(huán)境變量。

11.如何刪除環(huán)境變量的定義?

  只需將其值設置為空即可:

  SET <variable>=

看完上述內(nèi)容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業(yè)資訊頻道,感謝您對億速云的支持。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

dos
AI