簡體   English   中英

如何在CMD中的批處理“目錄”腳本中排除輸出filelist.txt中的文件擴展名

[英]How to exclude file extensions in the output filelist.txt, within a batch “dir” script in CMD

我是CMD新手,並且對我正在使用的批處理腳本有疑問。 我有一個包含30個包含.pdf文件的子目錄的父目錄,每個子目錄都需要一個filelist.txt,並且每個filelist.txt都另存為它所屬的子目錄的文件名。 這已通過以下腳本完成:

     @echo off
     cd /d "C:\Desktop\parentDir"
            for /d %%a in (*) do ( 
            DIR /B /ON /A-D "%%a" > %%a.txt.  
            move %%a.txt "%%a" >nul 
        )

我的問題是如何刪除每個filelist.txt輸出中的文件擴展名。 對於前。 當我現在運行腳本時,輸出的.txt文件顯示1111.pdf 1112.pdf我需要刪除“ .pdf”

我知道使用“ for”命令可以“執行” echo %%〜na以刪除文件擴展名,但是我不知道如何/在何處將其納入當前腳本。

任何幫助表示贊賞!

您正在使用DIR命令列出所有文件。 它沒有用於隱藏擴展名的開關。

如您所指出的,您可以用FOR loop替換DIR命令。

cd /d "C:\Desktop\parentDir"
    for /d %%a in (*) do ( 
    for %%f in ("%%a\*") do @echo %%~nf >> %%a.txt.
    move %%a.txt "%%a" >nul 
)

暫無
暫無

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

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