Главная страница


ru.unix.bsd

 
 - RU.UNIX.BSD ------------------------------------------------------------------
 From : Ilya Anfimov                         2:5020/400     21 Jul 2006  01:01:31
 To : Rouslan Ibraguimov
 Subject : Re: запись в файл
 -------------------------------------------------------------------------------- 
 
 2006-07-20, Rouslan Ibraguimov
 <Rouslan.Ibraguimov@p666.f41.n5093.z2.fidonet.org> пишет:
 
 > it's really nice to talk to you
 >
 > Уважаемые гуpу и пpосто хоpошие люди -пpиведите пожалуйста пpимеp кода (на
 > пеpле, на шелле, на gcc) пpогpаммульки, котоpая вписывает в сеpедину
 > указанного конфига одну-две пpоизвольные стpочки.
 #!/usr/bin/perl -wpi
 use strict;
 use vars qw/$section $key $value/;
 BEGIN {
   $section = '';
 };
 if (m/^\s*\[([^]]*)\]\s*$/) {
   $section = $1;
   if ($section eq "testsection") {
     $_ .= "inserting=insert value\n";
   };
 } elsif (m/^\s*(\S+?)\s*=(.*)$/) {
   $key = $1;
   $value = $2;
   if (($section eq "testsection") &&
      ( ($key eq "deleting") ||
        ($key eq "inserting") ) ) {
     $_ = "";
   } elsif (($section eq "testsection") && ($key eq "changing")) {
     $_ = "changing=changed value\n";
   };
 };
 
 =========================
 
 Воздействие на следующий файл очевидно:
 во всех секцыях примерно-виндового .ini-файла
 с именем testsection допишэтся строчка с ключом inserting,
 изменятся строки с ключом changing и удалятся -- с ключом deleting.
 
 [section1]
 
 none
 key=value
 key=
 =value
  =newvalue
  deleting=value in section1
  changing = value changing 1
  inserting =inserting in section 1
 
  [testsection]
 
  deleting =value
 
  changing = new value
  inserting= inserted value
 
  keytest=value
 
  [section1]
 
  none
  key=value
  key=
  =value
   =newvalue
   deleting=value in section1
   changing = value changing 1
   inserting =inserting in section 1
 
   [testsection]
 
   deleting =value
 
   changing = new value
   inserting= inserted value
 
   keytest=value
 
    
 >
 
 --- ifmail v.2.15dev5.3
  * Origin: Demos online service (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 запись в файл   Rouslan Ibraguimov   20 Jul 2006 15:24:21 
 Re: запись в файл   Ilya Anfimov   21 Jul 2006 01:01:31 
 Re: запись в файл   Eugene Grosbein   21 Jul 2006 12:19:04 
Архивное /ru.unix.bsd/191700db54046.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional