Як приховати розширення файлів у командному рядку / редакторі dir?


9

Те, що я хочу зробити, здається дуже простим: у
мене в папці Windows є елементи різних типів, включаючи файли PDF, файли TXT та підкаталоги. Я пишу один рядок .bat файл, щоб перетягнути ТІЛЬКИ імена файлів PDF у новий текстовий файл.

Поки що це є у мене .bat:

dir *.pdf /b > PDF_LIST.txt

Це дає такий вихід у файлі PDF_LIST.txt:

A.pdf
B.pdf
C.pdf

Я хотів би залишити частину ".pdf" кожного рядка у файлі txt, оскільки я, очевидно, вже знаю, що кожен файл знаходиться у форматі PDF за параметром * .pdf в моєму заяві dir.

Це просто полегшило б мені скопіювати / вставити всі назви файлів безпосередньо з текстового файлу у текстовий документ для передачі, яку я надсилаю своєму клієнту. Якщо ви можете запропонувати кращий чи простіший спосіб отримати список файлів, не використовуючи пакетний файл, який також був би корисним.

Відповіді:


18

У вашому сценарії:

for %%i in (*.pdf) do @echo %%~ni >> PDF_LIST.txt

Хто це дує мені на думку (ніколи не працював із командним рядком). Гаразд, я пострілю. Дякую!
NoCatharsis

1
Побачте, help forчи є додаткова стимуляція черепа.
Призупинено до подальшого повідомлення.

Я виправив (що, на мою думку, був) ваш помилку в коді і запустив цю команду: для %% i в (* .pdf) do @echo %% ~ ni >> PDF_LIST.txt я отримую відповідь "%% i в цей час було несподівано "і жодного іншого виходу немає.
NoCatharsis

2
@NoCatharsis: Вибачте за друкарські помилки. У командному рядку просто використовуйте сингл %. Використовуйте %%у своєму пакетному файлі.
Призупинено до подальшого повідомлення.

Класно, працює як шарм - дякую за швидку допомогу.
NoCatharsis

0

Більшість текстових редакторів (включаючи блокнот) мають знайти та замінити. Просто використовуйте його, щоб знайти весь ".pdf" і замінити його на "". Готово :)

Ви також можете встановити це як макрос у слові.


Так, я використовую Notepad ++, щоб зробити це зараз - проте мені було просто цікаво, чи є спосіб вирізати ще один крок, записавши його в сценарій.
NoCatharsis
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.