Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Найти txt файл по имени и заменить содержание файла на мой текст! (http://forum.oszone.net/showthread.php?t=247104)

Fresenius 16-11-2012 23:49 2027106

Найти txt файл по имени и заменить содержание файла на мой текст!
 
Где то на компе есть файл file.txt (я не знаю где он,я знаю только название файла) .Мне нужно через бат найти по имени и заменить все данные на мои.
Пробовал так:
Код:

forfiles/p C: /c "cmd /c echo "1" > file.txt"
Но толку ноль.
Пробовал и через команду FIND ,тоже не пашет.
Прошу у Вас помощи.

zion87 17-11-2012 09:38 2027179

Код:

@echo off
for %%a in (c d e f g h i j k l m n o p q r s t u v w x y z) do (
  for /f "delims=*" %%B in ('dir /s /b /a-d "%%a:\file.txt"') do echo "1" > "%%~dpBfile.txt"
)
exit


Fresenius 17-11-2012 19:59 2027419

Спасибо big! И еще подскажите,как сделать в этой же команде замена текста на несколько строк(чтобы не создавать такую же команду для последующих строк)
1 stroka
2 stroka
3 stroka
4 stroka
5 stroka

zion87 17-11-2012 20:54 2027437

Код:

@echo off
for %%a in (c d e f g h i j k l m n o p q r s t u v w x y z) do (
  for /f "delims=*" %%B in ('dir /s /b /a-d "%%a:\file.txt"') do set f=%%~dpBfile.txt
)
echo "1 stroka" > "%f%"
echo "2 stroka" >> "%f%"
echo "3 stroka" >> "%f%"
echo "4 stroka" >> "%f%"
echo "5 stroka" >> "%f%"
exit


Fresenius 18-11-2012 13:18 2027662

Код:

@echo off
for %%a in (c d e f g h i j k l m n o p q r s t u v w x y z) do (
  for /f "delims=*" %%B in ('dir /s /b /a-d "%%a:\file.txt"') do set f=%%~dpBfile.txt
)
echo "1 stroka" > "%f%"
echo "2 stroka" >> "%f%"
echo "3 stroka" >> "%f%"
echo "4 stroka" >> "%f%"
echo "5 stroka" >> "%f%"
exit

Всё работает ,только одна проблема,если 2 файла то скрипт меняет только 1 файл,а мне нужно чтобы меняло все файлы которые с именем file.txt(которые найдёт скрипт).Большое спасибо Вам за помощь.

gora 21-11-2012 08:49 2029417

Цитата:

Цитата Fresenius
нужно чтобы меняло все файлы которые с именем file.txt(которые найдёт скрипт). »

Код:

@echo off
for %%a in (c d e f g h i j k l m n o p q r s t u v w x y z) do (
        If Exist %%a:\* (
                for /f "delims=*" %%B in ('dir /s /b /a-d "%%a:\file.txt" 2^>Nul') do (
                        (
echo "1 stroka"
                        echo "2 stroka"
                        echo "3 stroka"
                        echo "4 stroka"
                        echo "5 stroka")>"%%B"
                )
        )
)



Время: 11:55.

Время: 11:55.
© OSzone.net 2001-