1

По общему признанию, я новичок в использовании пакетных команд, поэтому я не уверен, возможно ли это вообще, если нет, пожалуйста, дайте мне знать. Недавно я сделал простую пакетную команду, чтобы вывести список каталогов всех файлов, заканчивающихся на .exe, и поместить их в текстовый файл, который я вызываю testpaths.txt.

dir C:\*.exe /s /b >> testpaths.txt

Эта команда работает как задумано и перечисляет весь каталог, как это

C:\Windows\notepad.exe

Что я хочу сделать, так это написать скрипт, ищущий этот документ и отделяющий из-за отсутствия лучшего термина ту часть строки, которая говорит * .exe, чтобы она выглядела как

notepad.exe

Я полностью потерян относительно того, где и как я мог бы сделать это, поскольку я новичок в этом. Любая помощь будет очень признательна, спасибо!

1 ответ1

0

Как извлечь имя файла из списка файлов?

Используйте следующий пакетный файл:

@echo off
setlocal enabledelayedexpansion
dir C:\*.exe /s /b >> testpaths.txt
rem read the file one line at a time
for /f "usebackq" %%i in (`type testpaths.txt`) do (
  rem extract the filename
  echo %%~nxi
  )
endlocal

Дальнейшее чтение

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .