簡體   English   中英

將字符串參數作為運行時參數傳遞

[英]Passing a string parameter as a runtime Argument

我想通過批處理文件打開特定路徑。 我想在運行時在路徑中傳遞一個節點。 如果我給輸入Google ,我想在這里傳遞字符串參數。 它將打開道路

want to pass one node in path at run time . if i give input Google.i
want to pass the string argument here. it will open the path
C:\Program Files (x86)\google\Common

我該如何實現?

我的批處理文件:

@echo off
echo test variables 
set input = 
set /p input ="Choice"
echo C:\Program Files (x86)\%input%\Common
cd C:\Program Files (x86)\"%input%"\Common
pause

您的代碼中存在以下問題:

  • set命令中,變量名和=符號之間有一個空格 ,因此它成為變量名的一部分; 因此變量input保持為空/未定義;
  • cd命令的路徑中有引號,那里是禁止的字符;

這是更正的版本:

@echo off
echo test variables 
set "input="
set /p "input=Choice"
echo "C:\Program Files (x86)\%input%\Common"
cd "C:\Program Files (x86)\%input%\Common"
pause

我在cd命令的路徑cd加上了引號。 盡管對於cd不是必需的,但是如果缺少"" ,許多其他命令將無法處理包含空格的路徑。


要使用第一個命令行參數而不是用戶輸入,請刪除set命令,並將%input%替換為%~1 ~確保除去所有引號。 輸入call /? 在命令提示符下獲得有關此內容的詳細信息。

您是說要運行這樣的批處理文件嗎?

C:\>mybatch.bat Google

如果是這樣,則您的批處理文件將更改為此。

@echo off
echo test variables 
echo C:\Program Files (x86)\%1\Common
cd C:\Program Files (x86)\%1\Common
pause

暫無
暫無

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

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