批處理獲取目錄下所有檔名

2022-05-21 08:51:06 字數 1001 閱讀 7150

由於要處理一些檔案,找了個這樣的批處理: 輸出目錄及子目錄下所有的jpg的檔名,不含副檔名

其中,"delims=" 的含義是取消預設的分隔符,所以會把行上的內容照搬下來,而 "tokens=*" 表示獲取行上的所有內容,但是會忽略行首的所有空格。 另外的引數介紹一下:

%0 %1 %2 %3 %4 %5 %6 %7 %8 %9 %* 命令列傳遞給批處理的引數 %0 批處理檔案本身 %1 第乙個引數 %9 第九個引數 %* 從第乙個引數開始的所有引數

批引數(%n)的替代已被增強。

您可以使用以下語法: %~1           - 刪除引號(""),擴充 %1 %~f1          - 將 %1 擴充到乙個完全合格的路徑名 %~d1          - 僅將 %1 擴充到乙個驅動器號 %~p1          - 僅將 %1 擴充到乙個路徑 %~n1          - 僅將 %1 擴充到乙個檔名

%~x1          - 僅將 %1 擴充到乙個副檔名 %~s1          - 擴充的路徑指含有短名 %~a1          - 將 %1 擴充到檔案屬性 %~t1          - 將 %1 擴充到檔案的日期/時間 %~z1          - 將 %1 擴充到檔案的大小

可以組合修定符來取得多重結果: %~dp1         - 只將 %1 擴充套件到驅動器號和路徑 %~nx1         - 只將 %1 擴充套件到檔名和副檔名 %~ftza1       - 將 %1 擴充套件到類似 dir 的輸出行。 所以這裡的 echo %%~ni 意思是只是輸出第i個檔案的檔名。

在學習了perl以後,這些東西變得如此簡單!

列出指定目錄下所有檔名

要求 絕對路徑名做輸入引數,列印輸出該路徑下所有檔名 知識點 開啟目錄函式 dir opendir const char path 讀取目錄函式 struct dirent readdir dir dir 返回下乙個目錄項的指標。include include dirent結構體定義如下 struc...

C 快速獲取資料夾 目錄 下的所有檔名

說起使用c 操作檔案,最常見的是當屬對單一檔案進行讀寫了,但有時我們需要乙個目錄下的所有檔案又該怎麼快速獲取呢?這個問題的難點在於如何查詢檔案目錄下的檔案及其數量,以及如何遞迴查詢目錄下的子目錄的檔案及其數量。我一下子就懵了,趕緊開啟搜尋引擎,在網際網路上找了一圈,發現核心 幾乎都是同一段 原作者已...

用批處理獲取當前目錄下所有檔案的路徑

例一 強 echo off setlocal enabledelayedexpansion for f delims i in dir a s b on do set file fi set 不要這行file file cd set file file echo file 內容.txt 可以將所有檔...