Как показать только имена файлов без расширений, используя команду dir

Как отображать расширение файла?

В статье рассказывается о том, как отображать расширение файла в Windows при помощи нескольких способов. Это можно будет сделать при помощи системных настроек либо пары простых команд из командной консоли.

Используйте FOR и ECHO для достижения этой цели

for %f in ("*.txt") do @echo %~nf
FORFILES /c "cmd /c echo @fname"

Однако с этим я получаю кавычки вокруг каждого выходного имени файла, а это не то, что вам нужно.

Это то, что вы должны делать. Не используйте stringify и < >.

function arraysEqual(a, b) { if (a === b) return true; if (a == null || b == null) return false; if (a.length != b.length) return false; // If you don't care about the order of the elements inside // the array, you should sort both arrays here. for (var i = 0; i < a.length; ++i) { if (a[i] !== b[i]) return false; } return true;
}

задан phuclv 4 March 2019 в 05:22

Что такое расширение файла?

Собственно, что такое расширение файла, у меня уже есть. Позволю себе напомнить, что именно расширение идентифицирует тип самого файла. Именно расширение укажет системе, какую программу нужно запустить, чтобы его, файл, открыть. По умолчанию от глаз пользователя расширение скрыто. Но оно есть всегда и принадлежит к бессметному числу его атрибутов, а о его типе пользователь может судить, когда видит знакомый (или незнакомый) значок ярлыка файла.

Как быстро найти файл в Windows с помощью cmd ?

Приветствую вас, сейчас мы научимся, как найти файл или папку в Windows без помощи неважно работающего проводника системы, и будем использовать для этого либо команды в MS-DOS, либо с помощью его эмулятора – консоли команд cmd. У такого способа есть лишь один недостаток, который связан лишь с беспричинной боязнью пользователей перед текстовым интерфейсом работы с системой и сложившейся привычкой к графическому. Однако, по сути в обоих случаях нам всё равно приходится вручную набирать условия поиска потерявшегося файла или пакета файлов, а здесь без «вседозволенности» консоли просто не обойтись. От команд давно почившей операционной системы MS-DOS не скроется ничего, и cmd способна без труда открыть путь ко всем документам и директориям, которые находятся в чреве Windows .

Если вы попали сюда из поиска и вам нужно просто быстро узнать расширение файла, то к ваших услугам онлайн сервис «Определение типа файла без расширения»: https://suip.biz/ru/?act=file-type. Благодаря ему вам не понадобится устанавливать какие-либо программы, онлайн сервис за секунду определит тип файла, который вы прислали, причём покажет результаты сканирования сразу четырьмя программами, рассмотренными в этой статье. Заодно выведет найденную в файле метаинформацию — часто там есть что-то интересное.

Как показать только имена файлов без расширений, используя команду dir

Если вы из тех, кто хочет узнать как работают инструменты указанного сервиса, а также как ими пользоваться на своём компьютере, то продолжайте читать.

Если вам кажется, что проблема с определением типов файлов без расширений надуманная, то это далеко не так! Во-первых, если подумать, это не такая уж простая задача. А с файлом без расширения вы можете столкнуть, например, при декодировании строки из Base64 кодировки.

Во-вторых, у этой статьи будет продолжение, в которой эти же самые инструменты, которые вы изучите на этой странице, будут использоваться для:

1) разбора прошивок (например, роутеров, IP камер) на составные части (первый этап обратной инженерии либо анализа работы устройств для поиска уязвимостей и бэкдоров)

2) поиска файловых систем на дисках и их образах (первый этап криминалистической IT экспертизы)

3) поиска удалённых файлов

Печать

Краткий справочник по использованию параметров для bat (и cmd) файлов.

Можно объединить несколько параметров:

Запущенный bat-файл не загружается в память сразу, он считывает и выполняет команды по одной. Поэтому, если во время выполнения одной из команд изменить содержимое bat-файла, то при выполнении следующей команды будут срабатывать только что внесённые изменения.

@ 
 
 [][]
@ Это не выполнится, если параметр указан
@ Done.
 
 
@ Usage: ^<EnvironmentName^>
exit /B 

Этот же пример показывает, как можно экранировать действие специальных символов (в данном примере это символы < и >) с помощью символа ^.

Пример командного файла, который ожидает в первом параметре значение -a или -b:

@ 
 
 
 
 
 
 A
 
 
 B
 
 
 
 

1. Как запустить командный файл с параметрами site:winfaq.com.ru.

Что нужно, чтобы найти файл в Windows ?

Нам нужно имя файла и программу, которая его создала либо умеет читать.

Итак, если уверены, что файл просто «потерялся», вам нужно через консоль оказаться в корневой папке системы. Для этого введём пару символов:

cd\

корневая папка windows

dir *установ*.* /s
  • dir – команда отобразить список файлов и директорий
  •  — что-то там… (ну забыл я, мол)
  • – расширение файла (текстовый, музыка, PDF-ка, фильм и т.п.)
  • /s – команда на поиск в текущей директории и подкаталогах.

как найти файл в Windows

Результаты через пару мгновений будут выглядеть примерно так:

результаты поиска

На этот же манер можно найти файл, если вы знаете, какое расширение он имеет, т.е. какой программой открывается. Командой

dir *.xls /s
dir *.docx /s

можно будет найти документы Exel и Word. Присмотритесь к примерам разновидностей команд (вариаций здесь множество):

dir *.txt *.doc

отобразит в одной выдаче документы с расширениями .doc и .txt

dir /p

команда с этим атрибутом (в отличие от /s) поможет. если результатов будет множество, а вам удобнее просматривать их с небольшим интервалом.

dir /on

выдаст список файлов и директорий в алфавитном порядке

dir \ /s |find "i" |more

отображает все папки и их содержимое, включая время создания, количество файлов в каждой, сколько места занимают.

:/>  Win 10 Tweaker 17.4 Portable by XpucT Multi/Ru скачать торрент файл бесплатно

Как определить тип данных, если у файла нет расширения

Если у файла нет расширения, то единственным вариантом определения его типа остаётся содержимое этого файла. Можно попробовать добавлять различные расширения к имени файла и пытаться открыть соответствующими для этого расширения программами — этот вариант медленные и неэффективный.

Определённые типы бинарных файлов могут иметь одинаковый набор байтов — по этим байтам можно сопоставить тип файлов. И именно данный метод и применяется программами, предназначенными для определения типа данных. Специфичные байты как правило располагаются не в самом начале файла, поэтому кроме самих байтов, нужно знать смещение от начала, где эти байты должны находиться. Некоторые программы в дополнении к байтам для идентификации ещё имеют список для проверки на ложное срабатывание.

Такие паттерны на английском часто называют magic — это пошло от «magic number» в исполнимых файлах. Эти файлы имеют «магическое число», хранящееся в определённом месте рядом с началом файла, которое сообщает операционной системе UNIX, что файл является двоичным исполняемым файлом и каким именно из нескольких типов. Концепция «магического числа» была применена к другим бинарным файлам. То есть файлы одинакового типа имеют одинаковую последовательность байтов в определённом месте от начала файлов.

Файл с сигнатурами, описывающими какие именно байты, на каком расстоянии от начала файла характерны для файлов того или иного типа, обычно называют magic file.

Чтобы понять количество проделанного труда при поиске уникальных байтов, обязательно присутствующих в тех или иных файлах, посмотрите на магический файл для определения файловых систем https://github.com/file/file/blob/master/magic/Magdir/filesystems

Это только один файл из перечня различных типов файлов: https://github.com/file/file/tree/master/magic/Magdir

Кроме магических чисел могут применяться и другие техники, например, программа file для проведения тестов файловых систем также может использовать системный вызов stat. Тип текстовых файлов определяется по содержащимся в них строкам (например, это может быть PHP код, файл в XML или HTML разметке, JSON и так далее).

Связанные статьи

  • Анализ и разбивка составных файлов (прошивки, образы дисков) (99.8%)
  • Отладка приложения в Windows с Radare2 (50.3%)
  • Обратный инжиниринг с использованием Radare2 (Reverse Engineering) (50%)
  • Обратный инжиниринг с использованием Radare2 (Reverse Engineering) (часть 2) (50%)
  • Анализ трояна Snojan (50%)
  • Перевод официальной документации по Kali Linux: WSL (подсистема Windows для Linux) (RANDOM – 0.3%)

Зачем его показывать-то?

Если вы не озабочены вопросами корректного открытия файлов, вы не собираетесь углубляться в вопрос о его истинном происхождении, и вы не хакер, подделывающий само расширение, то незачем. Однако для тех, чьи интересы лежат шире, чем просмотр документов в формате word/pdf/exel, это пригодиться. Если же в системе нередко появляются разного батники и скрипты для системных настроек, вам точно сюда.

Расширение файла через реестр

  • откроем строку поиска Windows или консоль команд cmd
  • введём команду
regedit.exe
  • Пройдём до ветки
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced

Найдём DWORD параметр с именем

и присвоим ему значение 0. Это позволит отображать расширение файлов. Если присвоить значение 1, всё вернётся на свои места.

отображать расширение файла через реестр

Хотите быстро переходить в нужную ветку реестра?

Альтернативы file

Для большинства нужд по определению типа файла без расширения достаточно утилиты file, но есть утилиты со смежным функционалам, которые могут заменить или уточнить информацию от file. Более подробно каждая из этих программ будет рассмотрена в следующей части, сейчас только краткий обзор.

Detect It Easy

Detect It Easy — это кроссплатформенная программа для определения типов файлов. Имеется вариант с графическим интерфейсом, а также интерфейсом командной строки.

Инструкцию по установке программы вы найдёте на её странице https://kali.tools/?p=6788.

die /mnt/disk_d/Share/testfiles/file1
diec /mnt/disk_d/Share/testfiles/file1

Detect It Easy в первую очередь нацелена на анализ исполнимых файлов, поэтому её функции в большей степени относятся к файлам программ, например, определение архитектуры. Но также имеется поддержка других бинарных файлов.

Binwalk

Binwalk это программа для анализа прошивок, но в ней собрано много сигнатур бинарных файлов, поэтому она подходит для определения типа файла. Особенность Binwalk в том, что она нацелена на работу с составными файлами (которыми обычно и являются прошивки), поэтому она может определять тип файла даже если файл находится не в начале.

Использование такое же, как и file, достаточно указать путь до одного или нескольких файлов:

:/>  Невозможно удалить пустую папку

binwalk /mnt/disk_d/Share/testfiles/file1

Detect It Easy и Binwalk не столько конкуренты утилиты file, сколько «последний шанс» определить тип данных, если команда file не помогла.

Смотрите продолжение в статье «Анализ и разбивка составных файлов (прошивки, образы дисков)».

Команда file — мгновенное определение типа любого файла

В Linux есть команда file с огромной базой сигнатур, которая очень быстро определяет тип файла:

Чтобы узнать, что за файл без расширения, выполните команду вида:

file /ПУТЬ/ДО/ФАЙЛА
file file1
file1: Microsoft Word 2007+

Как показать только имена файлов без расширений, используя команду dir

То есть это текстовый файл офисного пакета Microsoft Office.

Можно указать сразу несколько файлов для проверки или использовать подстановочные символы. Например, следующая команда проверит типы всех файлов в текущей папке:

file *

Как показать только имена файлов без расширений, используя команду dir

У программы file имеются опции, подробности о них смотрите в отдельной статье «Инструкция по использованию команды file».

Как отображать расширение файла через настройки проводника?

Традиционный вариант вскрыть расширение файла. Способ подходит для всех версий Windows, начиная с Vista. Откроем консоль cmd от имени администратора и введём быструю команду

control folders

В открывшемся окне Параметров папок переходим во вкладку Вид и найдём параметр Скрывать расширения для зарегистрированных типов файлов:

отображать расширение файлов

Снимите с него значок. Теперь расширения файлов вам будут видны во всей системе.

расширения файлов

Аналог команды file для Windows

file — это утилита командной строки для Linux, поэтому пользователям Windows нужна какая-то альтернатива. Рассмотрим несколько способов использования file в Windows.

1. Утилита file в Cygwin

Как показать только имена файлов без расширений, используя команду dir

2. file в WSL

Подсистема Windows для Linux (WSL) это ещё один способ использовать утилиты Linux в Windows. Подробности о работе с WSL смотрите в справочном материале «WSL (подсистема Windows для Linux): подсказки, инструкции, решения проблем».

3. Скомпилированный file для Windows

Файлы различаются архитектурой (64- и 32-битные), а также компилятором.

Откройте командную строку, для этого нажмите Win+x, выберите «Windows PowerShell».

Перейдите в папку с программой:

cd C:\Users\MiAl\Downloads\file\

Для определения расширения файла используйте команду вида:

.\file 'ПУТЬ:\ДО\ФАЙЛА'
.\file 'Z:\testfiles\file1'

Как показать только имена файлов без расширений, используя команду dir

Вы можете проверить сразу много файлов, для этого перейдите в папку с утилитой file и выполните команду вида:

dir 'ПУТЬ:\ДО\ПАПКИ\*' | foreach { .\file $_ }

Например, я хочу проверить все файлы в папке Z:\testfiles\, тогда команда следующая:

dir 'Z:\testfiles\*' | foreach { .\file $_ }

Как показать только имена файлов без расширений, используя команду dir

4. TrID — кроссплатформенная альтернатива file для Windows и Linux

В утилите TrID довольно много сигнатур и база данных постоянно пополняется новыми образцами. Программа является кроссплатформенной, подробную инструкцию по установке и использованию в Windows и Linux вы найдёте на этой странице: https://kali.tools/?p=2887

Пример анализа файла — обратите внимание, что выведено несколько вариантов с указанием процентной вероятности каждого из них:

export LC_ALL=C
trid /mnt/disk_d/Share/testfiles/file1

Как показать только имена файлов без расширений, используя команду dir

Если указать несколько файлов для идентификации, то будет выведен только самый вероятный вариант типа файла:

trid /mnt/disk_d/Share/testfiles/*

Как показать только имена файлов без расширений, используя команду dir

Установка TrID в Windows

Распакуйте оба файла в одну папку.

Откройте командную строку, для этого нажмите Win+x, выберите «Windows PowerShell».

Перейдите в папку с программой:

cd C:\Users\MiAl\Downloads\trid\

Для определения расширения файла используйте команду вида:

.\trid 'ПУТЬ:\ДО\ФАЙЛА'
.\trid Z:\testfiles\file1

Подстановочные знаки могут использоваться для сканирования групп файлов, целых папок и так далее.

Как показать только имена файлов без расширений, используя команду dir

Как показать только имена файлов без расширений, используя команду dir

Как показать только имена файлов без расширений, используя команду dir

Кроме того, использование ключа -ae даст команду TrID добавить предполагаемые расширения к именам файлов. Это удобно, например, при работе с файлами, восстановленными программами для восстановления данных. Например:

trid c:\temp\* -ae TrID/32 - File Identifier v2.24 - (C) 2003-16 By M.Pontello Definitions found: 5702 Analyzing... File: c:\temp\FILE0001.CHK 75.8% (.BAV) The Bat! Antivirus plugin (187530/5/21) File: c:\temp\FILE0002.CHK 77.8% (.OGG) OGG Vorbis Audio (14014/3) File: c:\temp\FILE0003.CHK 86.0% (.DOC) Microsoft Word document (49500/1/4) File: c:\temp\FILE0004.CHK 42.6% (.EXE) UPX compressed Win32 Executable (30569/9/7) 4 file(s) renamed.

На этом этапе файлы в папке c:\temp будут выглядеть так:

  •   FILE0001.CHK.bav
  •   FILE0002.CHK.ogg
  •   FILE0003.CHK.doc
  •   FILE0004.CHK.exe

Вместо предыдущей опции можно использовать -ce, которая изменит расширение файла на новое; если у файла нет расширения, будет добавлено новыъое. Например:

  •   IAmASoundFile.dat -> IAmASoundFile.wav
  •   IAmABitmap -> IAmABitmap.bmp

Таким образом, можно работать со всем деревом папок или определенным подмножеством файлов, просто используя вывод какой-либо другой команды через конвейер. Что-то вроде:

dir d:\recovered_drive /s /b | trid -ce -@ Definitions found: 5702 Analyzing... File: d:\recovered_drive\notes 100.0% (.RTF) Rich Text Format (5000/1) File: d:\recovered_drive\temp\FILE0001.CHK 77.8% (.OGG) OGG Vorbis Audio (14014/3) ... 

Можно указать TrID показывать дополнительную информацию о каждом совпадении (например, тип mime, кто создал эту сигнатуру, сколько файлов было просканировано и так далее); а также можно ограничить количество отображаемых результатов.

Ключ -v активирует подробный режим, а -r:nn указывает максимальное количество совпадений, которое будет отображать TrID. По умолчанию 5 для обычного режима, 2 для подробного, 1 для многофайлового анализа.

trid "c:\t\Windows XP Startup.ogg" -v -r:2 TrID/32 - File Identifier v2.24 - (C) 2003-16 By M.Pontello Collecting data from file: c:\t\Windows XP Startup.ogg Definitions found: 5702 Analyzing... 77.8% (.OGG) OGG Vorbis audio (14014/3) Mime type : audio/ogg Definition : audio-ogg-vorbis.trid.xml Files : 37 Author : Marco Pontello E-Mail : marcopon@nospam@gmail.com Home Page : http://mark0.net 22.2% (.OGG) OGG stream (generic) (4000/1) Definition : ogg-stream.trid.xml Files : 35 Author : Marco Pontello E-Mail : marcopon@nospam@gmail.com Home Page : http://mark0.net

Программа TrID обновляется нечасто, но база данных регулярно получает новые сигнатуры, поэтому время от времени обновляйте базу данных.

:/>  Куда скачиваются игры стим

5. fil — ещё одна кроссплатформенная альтернатива file

Программа fil написана на Go и является кроссплатформенной. Но в программе настолько мало сигнатур, что, на мой взгляд, утилита fil практически бесполезна.

В пакетных файлах вам нужно удваивать% для переменных

for %f in ("*.txt") do @echo %%~nf

Да, это безумие, но это мучительная цена, которую мы платим за использование языка пакетных операций вместо любого другого языка (на ВСЕХ !). Я как алкоголик, обещая всем и каждому, что я никогда больше не напишу строку кода партии, а потом снова и снова застенчиво возвращаюсь, чтобы сделать это снова.

ответ дан Eureka 4 March 2019 в 05:22

Чтобы добавить ответ Эврики, команда vanilla dir не может достичь того, что вы ищете.

C:\Users\jacob>dir /?
Displays a list of files and subdirectories in a directory.
DIR [drive:][path][filename] [/A[[:]attributes]] [/B] [/C] [/D] [/L] [/N] [/O[[:]sortorder]] [/P] [/Q] [/R] [/S] [/T[[:]timefield]] [/W] [/X] [/4] [drive:][path][filename] Specifies drive, directory, and/or files to list. /A Displays files with specified attributes. attributes D Directories R Read-only files H Hidden files A Files ready for archiving S System files I Not content indexed files L Reparse Points - Prefix meaning not /B Uses bare format (no heading information or summary). /C Display the thousand separator in file sizes. This is the default. Use /-C to disable display of separator. /D Same as wide but files are list sorted by column. /L Uses lowercase. /N New long list format where filenames are on the far right. /O List by files in sorted order. sortorder N By name (alphabetic) S By size (smallest first) E By extension (alphabetic) D By date/time (oldest first) G Group directories first - Prefix to reverse order /P Pauses after each screenful of information. /Q Display the owner of the file. /R Display alternate data streams of the file. /S Displays files in specified directory and all subdirectories. /T Controls which time field displayed or used for sorting timefield C Creation A Last Access W Last Written /W Uses wide list format. /X This displays the short names generated for non-8dot3 file names. The format is that of /N with the short name inserted before the long name. If no short name is present, blanks are displayed in its place. /4 Displays four-digit years
Switches may be preset in the DIRCMD environment variable. Override
preset switches by prefixing any switch with - (hyphen)--for example, /-W.

Кроме того, в качестве альтернативы предложению использовать ("*.txt"), если ваш список файлов включает в себя несколько расширений, вы можете либо исключить разные расширения , либо использовать *.*, чтобы получить все файлы с . в названии. Поиграйте с этим шаром, чтобы получить из него то, что вы хотите.

ответ дан Jacob 4 March 2019 в 05:22

Это возможно с помощью команды dir и цикла for:

@echo off
for /F "delims= eol=" %%A IN ('dir /A-D /B') do echo %%~nA

Если вам нужен полный путь без расширения, попробуйте:

Для однострочного cmd:

for /F "delims= eol=" %A IN ('dir /A-D /B') do echo %~nA

А для полного пути без расширения попробуйте:

for /F "delims= eol=" %A IN ('dir /A-D /B') do echo %~dpnA

ответ дан double-beep 4 March 2019 в 05:22

В PowerShell будет намного проще:

(Get-ChildItem -File).BaseName
Get-ChildItem | ForEach-Object { 

В PowerShell будет намного проще:

[110] [111]

Так что из cmd вы можете запустить любой из них для достижения цели

powershell -Com "(ls -File).BaseName"
powershell -Com (ls^ -File).BaseName

.BaseName }

Так что из cmd вы можете запустить любой из них для достижения цели

powershell -Com "(ls -File).BaseName"
powershell -Com (ls^ -File).BaseName

ответ дан phuclv 4 March 2019 в 05:22

Другие вопросы по тегам:

Похожие вопросы:

Как отображать расширение через командную строку?

Редактор групповой политики, откуда наш параметр также можно изменить, недоступен владельцам домашних версий Windows. Так что провернём наше действо через cmd. Как её запускать от имени администратора вы знаете из верхнего абзаца. Теперь, чтобы отобразить расширение файла, скопируйте и вставьте вот эту команду:

reg add HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced /v HideFileExt /t REG_DWORD /d 0 /f

отображать расширение файла через командную строку

Готово. Чтобы отменить изменения, повторите команду, но в таком виде:

reg add HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced /v HideFileExt /t REG_DWORD /d 1 /f