Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - поиск файла.

Ответить
Настройки темы
CMD/BAT - поиск файла.

Новый участник


Сообщения: 5
Благодарности: 0

Профиль | Отправить PM | Цитировать


нужно чтобы batник искал файл 123456.exe на диске С.
как это написать?

Отправлено: 00:00, 26-08-2010

 

Новый участник


Сообщения: 5
Благодарности: 0

Профиль | Отправить PM | Цитировать


Внизу я подписывал для чего. Конечная цель вроде и так понятна. Найти файл, поместить его содержимое в переменную и вывести на экран.

Разве это так не понятно ?

Отправлено: 22:12, 05-03-2011 | #11



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

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


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


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

Отправлено: 05:23, 06-03-2011 | #12


Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


Цитата Aarons:
Найти файл, поместить его содержимое в переменную и вывести на экран. »
Код: Выделить весь код
@echo off
SETLOCAL EnableDelayedExpansion
::поиск файла
for /f "tokens=*" %%a in ('dir /b/s/a-d "D:\login.ini"') do set "name=%%a"
::чтение в "переменную" $v_
for /f %%a in ('^<"%name%" find/c /v ""') do set/a "$n=%%a"
for /f "tokens=1* delims=:" %%a in ('findstr/n $ "%name%"') do set "$v_%%a=%%b "
::вывод на экран из памяти
(echo %name%
 echo ---------------------
 for /l %%i in (1,1,%$n%) do @call echo\%%$v_%%i:~,-1%%
)|more

echo\&pause
- строка файла не должна начинаться на двоеточие ":"
- строки не должны содержать восклицательных знаков "!" и спецсимволов
- при желании можно учесть и эти случаи ценой усложнения скрипта

Последний раз редактировалось amel27, 06-03-2011 в 06:51. Причина: учесть пустые строки при выводе на экран

Это сообщение посчитали полезным следующие участники:

Отправлено: 05:54, 06-03-2011 | #13


Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


Цитата Aarons:
Конечная цель вроде и так понятна. »
Формально Iska прав: вывод файла на экран (пользователю) - "цель", предварительное сохранение данных в переменной (программером) - "средство". "Цель" всегда одна, "средств" - множество, вплоть до самых извращенных... типа "вывести именно батником" (шутка).

"средство" может стать "целью":

- в академических целях (задача из учебника);
- из-за дополнительных ограничений (политика безопасности, знание языка, особенности реализации и т.п.);

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

Отправлено: 06:47, 06-03-2011 | #14


Новый участник


Сообщения: 5
Благодарности: 0

Профиль | Отправить PM | Цитировать


Уважаемые Господа, а подскажите - как добавить в переменную из файла к примеру только первую и четвёртую строки. Другие пропустить.

Прошу прощения за надоедливость.

Последний раз редактировалось Aarons, 07-03-2011 в 08:30.


Отправлено: 02:46, 07-03-2011 | #15


Новый участник


Сообщения: 1
Благодарности: 0

Профиль | Отправить PM | Цитировать


А можно ли написать батник, чтобы он искал определенный файл и подменял его другим?

Отправлено: 22:31, 19-02-2012 | #16


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Цитата Merlin1975:
А можно ли написать батник, »
Можно.

Цитата Merlin1975:
чтобы он искал определенный файл »
Код наличествует в данной теме.

Цитата Merlin1975:
и подменял его другим? »
Поясните.

Отправлено: 22:46, 19-02-2012 | #17


Старожил


Сообщения: 415
Благодарности: 257

Профиль | Отправить PM | Цитировать


Aarons, вот так:
Код: Выделить весь код
@Echo Off
SetLocal EnableDelayedExpansion
:: Здесь указываем номера нужных строк
Set Strings=[1],[4]
Set i=0
For /F "usebackq delims=" %%A In ("C:\Documents and Settings\Inquisitor\Рабочий стол\Новая папка\config.pl") Do (
Set /A i+=1
Echo %Strings%|Find "[!i!]">nul && Set Result=!Result!%%A
)
Echo %Result%
Pause
Номера добавляемых строк пишутся в переменную Strings, в квадратных скобках, через запятую (последнее необязательно, исключительно для более аккуратной записи), результат в виде общего содержимого всех выбранных строк пишется в переменную Result. Например, если протестировать на файле с вот таким содержимым
Код: Выделить весь код
one
two
three
four
five
То в Result окажется строка onefour

Последний раз редактировалось Anonymоus, 20-02-2012 в 01:03.


Отправлено: 23:19, 19-02-2012 | #18


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Anonymоus, если коллега Aarons не подписан на эту тему, то вряд ли он узнает о решении: скоро год как он не заходил на форум.

Отправлено: 01:42, 20-02-2012 | #19


Новый участник


Сообщения: 2
Благодарности: 0

Профиль | Отправить PM | Цитировать


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

1 искать файл 1.exe по локальным дискам (может быть несколько)
2 если 1.exe найден по запускаем приложение A.exe от имени администратора, если ненайден то переходим к поиску файла 2.exe

Отправлено: 14:39, 28-03-2012 | #20



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - поиск файла.

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] поиск файла по маске и запись этого имени в переменную ___dima___ Скриптовые языки администрирования Windows 20 18-06-2017 01:46
[решено] Рекурсивный поиск файла cra5h_ AutoIt 47 06-02-2010 11:38
[решено] Поиск файла на компьютере sashadeg AutoIt 12 30-01-2010 18:40
Разное - [решено] Поиск по типу файла 7human7 Microsoft Windows 7 2 25-11-2009 09:51
CMD/BAT - Как из бат-файла проверить наличие файла по ссылке, не скачивая файл ? mitiya Скриптовые языки администрирования Windows 2 27-06-2008 20:50




 
Переход