Как я могу скопировать имена файлов в каталоге в текстовый файл или в буфер обмена?
Как я могу скопировать имена файлов в каталоге в текстовый файл или в буфер обмена?
Ответы:
Это очень просто в интерпретаторе командной строки Windows (все операционные системы Windows):
cmd
Enter)cd
) к каталогу, файлы которого вы хотите перечислить.dir > output_file_name
dir > C:\dir.txt
EnterОткройте вновь созданный текстовый файл ( C:\dir.txt
), и вы получите полный вывод dir
команды в этом каталоге.
Символ «больше» ( >
) означает перенаправление вывода; он отправляет выходные данные большинства команд в указанный вами файл и очень удобен для возможности регистрации выходных данных команд.
Выходом можно управлять всеми доступными опциями для настройки обычного вывода команды DIR; просто добавьте перенаправление вывода в конце любых аргументов, которые вы хотите отправить в текстовый файл.
Обновление: создание контекстного меню, вызываемого правой кнопкой мыши, для создания списка содержимого каталога.
Создайте командный файл и сохраните его как %windir%\DirList.bat
:
@echo off
set dirpath=%1
dir %dirpath% /-p /o:gn > "%dirpath%\DirContents.txt"
exit
Откройте ваш SendTo
каталог:
Windows 7 / Vista: %appdata%\Microsoft\Windows\SendTo
Windows XP:%USERPROFILE%\SendTo
Создайте новый ярлык DirList.bat
и назовите его как хотите.
Теперь, щелкнув правой кнопкой мыши по любому каталогу и выбрав SendTo
подменю, вы увидите новую команду для отображения содержимого каталога.
ПРИМЕЧАНИЕ. Это будет работать только при щелчке правой кнопкой мыши по каталогу и отображает только содержимое каталога, по которому вы щелкнули правой кнопкой мыши. Он также сохраняет список в этот каталог (чтобы избежать перезаписи других файлов). Сценарий может быть легко изменен, чтобы изменить место хранения файла списка вывода.
/b
переключателя. Без этого дополнительная информация, такая как размеры файлов и даты создания, также будет записана в файл.
dir > dir.txt
. Затем я могу скопировать этот файл в любую папку, запустить его и получить список текстовых файлов, не открывая командную строку и не перемещаясь по папкам.
Вы можете использовать dir /b > files.txt
из командной строки, чтобы получить список имен файлов, сохраненных в files.txt
. Добавьте, /s
если вы хотите рекурсивный список.
Чтобы поместить содержимое непосредственно в буфер обмена, просто передайте вывод clip
, т.е. выполните dir /b | clip
.
Из проводника Windows создайте ярлык в папке SendTo и введите следующую команду:
%windir%\system32\cmd.exe /k dir /b "%1"
удалить текст «Начать с»
После того, как команда была выполнена один раз, вы можете изменить значения по умолчанию для окна (например, выбор с помощью мыши вместо Edit → Mark).
Единственная проблема заключается в том, что вам нужно будет игнорировать первую строку (которая говорит "файл не найден").