BAT,你知道批處理中 for 語句中的 習 是什麼意思嗎?

發布 教育 2024-06-14
6個回答
  1. 匿名使用者2024-01-29

    這些問題太模糊了,幾乎是基於猜測的。

    讓我們從這個開始。 1:cmd 下幾乎不需要 if errorlevel 1。

    2:copy不新增y引數,如果有目標檔案會因為提示是否覆蓋而被終止(yes no all),如果新增y引數errorLevel沒有多大意義,則為語法和邏輯錯誤。

    :第乙個解決方法:

    echo off

    for /f "deilms=" %%a in ( do (for /f "deilms="%%i in ( do (%%i>> 不存在 else (echo 已存在%%i without replication):: 第二種解決方法:

    echo off

    for /f "deilms=" %%a in ( do (for /f "deilms=" %%i in ( do (copy /y "%%a" "%%i"&&(回顯複製 %%i 成功)||echo 複製失敗,因為 %%i 中可能存在系統性、隱藏的唯讀屬性

    :而不是 if errorlevel 語法和巢狀用法示例:

    REM 到 C:遊戲,如果因為屬性問題複製到 D:Playem,無論是複製到 C:遊戲還是 D:Play,只要複製成功,就會被刪除。

    rem 巢狀語法最重要的一點是用好括號。

  2. 匿名使用者2024-01-28

    for 命令是乙個複雜的命令,用於迴圈訪問指定範圍的引數。

    在批處理檔案中使用 for 命令時,增強了使用 %%variable 指定變數的替換功能。 您現在可以使用以下選項語法:i - 刪除任何引號 ("),展開 %i

    fi - 將 %i 括為完全限定的路徑名 % di - 將 %i 僅擴充套件為乙個驅動器號。

    pi - 將 %i 僅擴充套件到一條路徑。

    ni - 將 %i 僅擴充套件為乙個檔名。

    習 - 將 %i 僅擴充套件為乙個檔案副檔名。

    si - 擴充套件路徑僅包含短名稱。

    ai - 將 %i 展開為檔案的檔案內容。

    ti - 將 %i 擴充到檔案中的日期和時間。

    zi - 將 %i 擴充套件到檔案大小。

    $path:i - 查詢路徑環境變數中列出的目錄,並將 %i 展開為找到的第乙個完全限定名稱。 如果未定義環境變數,或者未找到檔案,則此組合鍵將擴充套件空字串以組合修飾符以獲得多個結果:

    DPI - 僅將 %i 括在乙個驅動器號和路徑中 %nxi - 僅將 %i 括在乙個檔名和副檔名中% FSI - 僅將 %i 括在具有短名稱的完整路徑名中 %dp$path:i - 查詢路徑環境變數中列出的目錄,並將 %i 擴充套件為找到的第乙個驅動器號和路徑。

    FTZAI - 將 %i 擴充套件到 DIR,就像輸出行在上面的示例中,%i 和 path 可以替換為其他有效值。 % 語法以有效的 for 變數名稱停止。 像 %i 這樣的大寫變數名稱更易於閱讀,並避免與中性鍵組合混淆。

  3. 匿名使用者2024-01-27

    %% 習 將 %%i 解開到副檔名,即獲取 %%i 的擴充套件部分 其他操作包括 %i %i,刪除任何引號 ("")。fi 將 %i 設定為完全限定的路徑名。 %di 僅將 %i 新增到驅動器號中。

    pi 僅向路徑傳送 %i。 %ni 僅將 %i 新增到檔名中。 %習 僅將 %i 新增到檔案副檔名。

    SI 路徑僅包含短名稱。 %ai 將 %i 新增到檔案的檔案屬性中。 %ti 將 %i 新增到檔案的日期和時間。

    zi 設定為檔案大小。 %path:i 搜尋 path 環境變數列出的目錄,並將 %i 新增到找到的第乙個完全限定名稱中。

    如果未定義環境變數名稱,或者通過搜尋未找到任何檔案,則此修飾符將擴充套件為空字串。 可以組合操作,例如 %dpi,只需將 %i 新增到驅動器號和路徑即可。

  4. 匿名使用者2024-01-26

    第 1 行、第 1 列、第 1 行、第 2 列、第 1 行、第 3 列。

    第 2 行、第 1 列、第 2 行、第 2 行、第 2 列、第 2 行、第 3 列。

    第 3 行,第 1 列,間隙,第 3 行,第 2 列,第 3 行,第 3 列。

    請按任意鍵繼續。 .

    你想像這樣輸出嗎? @echo off

    for /f "tokens=*"可疑分支 %%i in ( do echo %%i

    暫停加上應答者亂搞令牌=*。 這意味著一行中的所有內容都輸出為 i。

  5. 匿名使用者2024-01-25

    setlocal enabledelayedexpansion@echo off

    for /l %%i in (1000,1,1005) do (@set num=%%i

    echo !num:~-1,1!

    暫停的一般思想是將 %%i 分配給另乙個變數,然後操作另乙個變數,在本例中取數字的最後一位數字並使用延遲變數。

  6. 匿名使用者2024-01-24

    @echo off

    set p notifytype=“輸入 1,否則錯誤”。

    if "%notifytype%"=="1"(括號前應至少有乙個空格。

    echo ok

    else(else 應該是 if 之前的右括號)和它自己的括號(在同一行上。

    echo no)

相關回答
9個回答2024-06-14

for /f "tokens=*" %%a in ( do (set /a n+=1

set _!n!=%%a >>>More

7個回答2024-06-14

echo off

for /f "tokens=1* delims=:" %%a in ('findstr /n ".*" ""') do ( >>>More

11個回答2024-06-14

start c:\progra~1\hp\quickt~1\bin\instde~

將這兩句話另存為“刪除”。 bat“可以執行。 >>>More

5個回答2024-06-14

echo off

sed "s/^aaaa.*/bbbb/;/cccc/s/\(1dddd/" >>>More

4個回答2024-06-14

echo off

重置 p str=input(n1,n2,n3): >>>More