The UNIX and Linux Forums  
Здравствуйте и добро от Соединенных Штатов UNIX и Linux Форумы! Благодарим Вас за посещение и вступления нашей мирового сообщества.

Go Back   В UNIX и Linux Форумы > Топ форумы > Shell программирование и сценарии
.
Google unix.com



Shell программирование и сценарии Почтовые вопросы о KSH, CSH, SH, BASH, Perl, PHP, SED, AWK и скрипты оболочки и оболочки скриптовых языков здесь.

Подробнее UNIX и Linux Темы форума можно найти полезные
Нить Резьба для начинающих Форум Ответы Последнее сообщение
Вместо текста в нескольких файлах on9west Shell программирование и сценарии 1 05-20-2008 02:35 AM
читать пространство заполнено файл и заменить текст на конкретные позиции COD Shell программирование и сценарии 6 04-21-2008 06:40 AM
Вместо текста в нескольких файлах Tonka52 Shell программирование и сценарии 10 03-24-2008 08:11 AM
Как заменить одну строку текста в несколько строк FunnyCats UNIX для чайников Вопросы И Ответы 1 01-18-2007 09:52 AM
прыжки на конкретную строку в текстовом файле mridula Программирования высокого уровня 4 09-20-2005 02:49 AM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered By Powered by Google
 
LinkBack Резьба Инструменты Искать в этом Thread Оценить Thread Режимы дисплея
Old 06-17-2008
madhusmita madhusmita is offline
Зарегистрированный пользователь
  
 

Регистрация: Jun 2008
Сообщений: 29
Как заменить конкретный текст строки из нескольких случаев

Привет

Я хотел бы заменить конкретной строке, например ExitAction \u003d некому ExitAction \u003d FALSE под единственная задача sipsiproc и других ExitAction \u003d НЕТ останется, как обычно в файл (скрипт оболочки)

Этот файл содержит:
Код:
TASK rgcdproc {
    CommandLine    = $SSHOME/bin/rgcd.exe
    NewConsole     = yes
    ExitAction     = NONE
    DependantProcs = megacopiproc
}

TASK sipsubsystemproc {
    CommandLine    = $SSHOME/bin/sipsubsystem.exe
    NewConsole     = yes
    ExitAction     = NONE
    DependantProcs = sipsiproc
}

TASK sipsiproc {
    CommandLine    = $SSHOME/bin/sip_si.exe
    NewConsole     = yes
    ExitAction     = NONE
    DependantProcs = sipsubsystemproc
}

TASK megacopiproc {
    CommandLine    = $SSHOME/bin/megacopi.exe
    NewConsole     = yes
    ExitAction     = NONE
    DependantProcs = rgcdproc
С уважением,
Мадху

Последний раз редактировалось Йогеш Sawant; на 06-17-2008 08:32 AM.. Причина: добавлен код тегов
Old 06-17-2008
radoulov's Avatar
radoulov radoulov is online now Forum Staff  
наркоман
  
 

Регистрация: Январь 2007
Местоположение: Варна, България / Милан, Италия
Сообщения: 2871
Код:
perl -i.bak -00 -pe's/(TASK sipsiproc.*?ExitAction = )NONE/$1FALSE/s' inputfile
или:

Код:
perl -i.bak -00 -pe's/ExitAction = NONE/ExitAction = FALSE/ if /^TASK sipsiproc/' inputfile

Что Awk (nawk / или usr/xpg4/bin/awk по Solaris):

Код:
awk '/^TASK sipsiproc/{sub(/ExitAction = NONE/,"ExitAction = FLASE")}1' ORS="\n\n" RS= inputfile>newfile

Последний раз редактировалось radoulov; на 06-17-2008 05:33 AM..
Old 06-17-2008
madhusmita madhusmita is offline
Зарегистрированный пользователь
  
 

Регистрация: Jun 2008
Сообщений: 29
Большое спасибо
Old 06-17-2008
kahuna's Avatar
kahuna kahuna is offline
Зарегистрированный пользователь
  
 

Регистрация: Apr 2007
Сообщений: 149
Radoulov,

Цитата:
Первоначально Послано radoulov View Post
Код:
perl -i.bak -00 -pe's/ExitAction = NONE/ExitAction = FALSE/ if /^TASK sipsiproc/' inputfile
Не могли бы вы объяснить, немного больше о том, как второй Perl Решение работает? Я не могу понять, как известно, который заменит "ExitAction \u003d НЕТ" на замену. Я вижу, что вы его квалификационный если с заявлением, но я все еще не видите, как это делает замену получить право "ExitAction \u003d НЕТ", а не первого "ExitAction \u003d НЕТ".
Old 06-17-2008
radoulov's Avatar
radoulov radoulov is online now Forum Staff  
наркоман
  
 

Регистрация: Январь 2007
Местоположение: Варна, България / Милан, Италия
Сообщения: 2871
Цитата:
Первоначально Послано kahuna View Post
Radoulov,



Не могли бы вы объяснить, немного больше о том, как второй Perl Решение работает? Я не могу понять, как известно, который заменит "ExitAction \u003d НЕТ" на замену. Я вижу, что вы его квалификационный если с заявлением, но я все еще не видите, как это делает замену получить право "ExitAction \u003d НЕТ", а не первого "ExitAction \u003d НЕТ".
Конечно,
-00 с флагом + аргумент оказывается пункта режиме.
С perldoc perlrun:

Цитата:
Ключи, включают:

-0 [Восьмеричных / шестнадцатеричное]
определяет вклад записи сепаратор ($ /) в качестве восьмеричной или hexadeci -
ТЗА номер. Если Есть нет цифр, что нулевой символ является
сепаратор.
[...]

Особое значение 00 будет вызывать Perl чавкать к файлам в пункте
режиме. Стоимость 0777 вызовет Perl чавкать файлы в целом, поскольку
нет никаких юридических байтом с этим значением.
В этом режиме каждая запись является пункте текста прекращены на один или несколько пустых строк.
Таким образом изменить ExitAction только для записи (S) / пункт (ы), которые начинаются с шаблоном "Целевая sipsiproc".
Old 06-17-2008
kahuna's Avatar
kahuna kahuna is offline
Зарегистрированный пользователь
  
 

Регистрация: Apr 2007
Сообщений: 149
Благодаря radoulov! Я узнал, то в настоящее время.
Closed Thread

Закладки

Теги
Solaris

Резьба Инструменты Искать в этом Thread
Искать в этом Thread:

Расширенный поиск
Режимы дисплея Оценить эту ветку
Оценить эту ветку:

Отправка Правила
Вы не может Начать новую нитей
Вы не может Почтовые ответы
Вы не может Почтовые вложения
Вы не может Редактировать Ваши сообщения

BB код быть На
Смайлики являемся На
[IMG] код На
HTML-код Вне
Trackbacks являемся На
Pingbacks являемся На
Refbacks являемся На




Часовой пояс GMT -4. Текущее время 08:32 AM.


Powered By: Справка, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Язык Переводы на питание от .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
В UNIX и Linux форумы Содержание Copyright © 1993-2009. Все права Reserved.Ad управления по RedTyger

Содержание соответствующие URL-адреса в vBSEO 3.2.0