2 / 2 / 0
Регистрация: 17.12.2015
Сообщений: 20
1

Вывести на экран файлы, имена которых содержат только русские или только английские символы

15.02.2016, 15:24. Показов 2257. Ответов 13
Метки нет (Все метки)

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

Добавлено через 9 минут
точнее файлы, имена которых содержат либо русские, либо английские символы
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.02.2016, 15:24
Ответы с готовыми решениями:

Прочитать текст из файла и вывести на экран только те слова которые содержат английские буквы
Задача такова. что нужно прочитать текст из файла и вывести на экран только те слова которые...

Вывести список всех файлов из указанной директории, имена которых содержат русские буквы
Помогите с заданием, заранее спасибо! Вывести список всех файлов из указанной директории, имена...

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

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

13
10543 / 5506 / 864
Регистрация: 07.04.2013
Сообщений: 15,660
15.02.2016, 15:34 2
Что то такое в голову пришло.

Windows Batch file
1
2
3
4
5
6
7
8
@echo off
setLocal EnableExtensions EnableDelayedExpansion
 
REM Файлы с русскими символами в именах
dir /a-d /b "D:\Directory" | findstr /i "[а-я]"
 
REM Файл с латинскими символами в именах
dir /a-d /b "D:\Directory" | findstr /i "[a-z]"
Добавлено через 45 секунд
К слову, под второе будут подпадать все файлы, так как расширение файла пишется латинскими символами
1
Покинул форум
3294 / 1080 / 298
Регистрация: 07.05.2015
Сообщений: 2,196
15.02.2016, 16:04 3
PetrovP, в контексте командной строки выполните команду:
Windows Batch file
1
powershell /nop /ex bypass "& {ls C:\MyPath | ? {[Regex]::IsMatch($_.BaseName, '\p{IsCyrillic}')}}"
где C:\MyPath замените на путь, в котором находятся файлы - получите список только тех имен, что состоят из кириллических символов.
vavun, тогда уж лучше так для русских:
Windows Batch file
1
C:\> for %i in ("C:\MyPath\*") do @(echo:%~ni |>nul findstr /irc:"[а-я]")&&@(echo:%~fi)
и только для латинских:
Windows Batch file
1
C:\> for %i in ("C:\MyPath\*") do @(echo:%~ni |>nul findstr /irc:"[a-z]")&&@(echo:%~fi)
2
10543 / 5506 / 864
Регистрация: 07.04.2013
Сообщений: 15,660
15.02.2016, 16:05 4
Цитата Сообщение от greg zakharov Посмотреть сообщение
%~ni
Согласен
0
3899 / 1538 / 261
Регистрация: 10.12.2013
Сообщений: 5,258
15.02.2016, 18:44 5
vavun,
а также
greg zakharov,

у ТС в формулировке задачи сказано ясно:
Цитата Сообщение от PetrovP Посмотреть сообщение
содержащие только русские символы, или только английские.
0
10543 / 5506 / 864
Регистрация: 07.04.2013
Сообщений: 15,660
15.02.2016, 18:46 6
Цитата Сообщение от volodin661 Посмотреть сообщение
у ТС в формулировке задачи сказано ясно
Но у нас же форум а не стол заказов Начало есть.

Добавлено через 1 минуту
Развейте идею дальше, сделайте доброе дело )
Или что то другое предложите. (только без perl)
0
3899 / 1538 / 261
Регистрация: 10.12.2013
Сообщений: 5,258
15.02.2016, 19:49 7
ну, я могу, например, с помощью зрительной внимательности
поанализировать вывод команды dir /b, если модераторов данной ветки
не устраивает пользование программными инструментами для решения
поставленной задачи.

Добавлено через 50 минут
если поставить исходную задачу поинтересней,
а именно,
определить, что все буквы в имени файла
( за исключением символов пунктуации, пробелов и цифр )
принадлежат только одному национальному алфавиту

и всё это желательно в пределах одного регулярного выражения -
это будет будоражить пытливую мысль.
0
10543 / 5506 / 864
Регистрация: 07.04.2013
Сообщений: 15,660
15.02.2016, 19:54 8
Немного допилил вариант greg zakharov,

только русские названия
Windows Batch file
1
for %i in ("D:\Temp\*") do @(echo:%~ni | findstr /irc:"[а-я]" | findstr /irvc:"[a-z]") && @(echo:%~ni)
только латинские названия
Windows Batch file
1
for %i in ("D:\Temp\*") do @(echo:%~ni | findstr /irc:"[a-z]" | findstr /irvc:"[а-я]") && @(echo:%~ni)
В обоих случаях гибриды вроде ТЕСТ TEST.txt не выводятся
0
3899 / 1538 / 261
Регистрация: 10.12.2013
Сообщений: 5,258
15.02.2016, 21:10 9
Цитата Сообщение от vavun Посмотреть сообщение
В обоих случаях гибриды вроде ТЕСТ TEST.txt не выводятся
подтверждаю: не выводятся

а те, что выводятся, так раза по четыре каждый
0
10543 / 5506 / 864
Регистрация: 07.04.2013
Сообщений: 15,660
15.02.2016, 21:17 10
Цитата Сообщение от volodin661 Посмотреть сообщение
а те, что выводятся, так раза по четыре каждый
И вы как знаток вероятно уже догадались, что я попросту забыл убрать && @(echo:%~ni)
0
10543 / 5506 / 864
Регистрация: 07.04.2013
Сообщений: 15,660
15.02.2016, 21:18 11
Вывести на экран файлы, имена которых содержат только русские или только английские символы
0
10543 / 5506 / 864
Регистрация: 07.04.2013
Сообщений: 15,660
15.02.2016, 22:23 12
Не ...
Вот так правильнее

Windows Batch file
1
2
for %i in ("D:\Temp\*") do @(echo:%~ni | findstr /irc:"[a-z]" | findstr /irvc:"[а-я]")>nul && @(echo:%~fi)
for %i in ("D:\Temp\*") do @(echo:%~ni | findstr /irc:"[а-я]" | findstr /irvc:"[a-z]")>nul && @(echo:%~fi)
0
4205 / 2083 / 653
Регистрация: 26.04.2015
Сообщений: 6,720
16.02.2016, 00:30 13
А может всего-то нужна проврка на возможность нахождения пути, молчит пока:
Windows Batch file
1
2
3
4
5
@echo off
chcp 1251>nul
if exist "ТЕСТ TEST.txt" (echo.Англ) else (echo.Русск)
chcp 866>nul
pause>nul
сохранить в 866.

Добавлено через 3 минуты
Проверка, есть ли кирилл в имени.
1
2 / 2 / 0
Регистрация: 17.12.2015
Сообщений: 20
17.02.2016, 15:02  [ТС] 14
спасибо всем за помощь!
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.02.2016, 15:02

Удалить файлы, имена которых содержат заданный символ или заданную группу символов
Собственно, думаю задание понятно из заголовка. Прошу помочь :) К примеру даны следующие файлы в...

Preg_match только латинские или русские символы
Форма смены ника для игрового сервера. Сейчас выражение выглядит так: preg_match("/+/",...

Вывести массивы номеров строк и столбцов, все элементы которых равны только 1 или только 0
Задан размер квадратной матрицы и значения ее элементов (0 или 1). Сформировать и вывести массив...

Вывести на экран только те числа, для которых аi больше или равно i
даны целые числа а1, а2....аn, введение случайным образом.Вывести на экран только те числа для...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.