powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / sed, не могу заюзать шаблон...
8 сообщений из 8, страница 1 из 1
sed, не могу заюзать шаблон...
    #35864792
Фотография Shredder2003
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вроде простейший вариант, но не работает.
к примеру, любые слова (шаблон \S+) заменить на LOM
Код: plaintext
1.
2.
bash- 3 . 00 $ echo 'OWNER = "LOPATA"' | sed -e s/\S+/LOM/g
OWNER = "LOPATA"

не работает, как видно.
что я делаю не так?
...
Рейтинг: 0 / 0
sed, не могу заюзать шаблон...
    #35865024
Sleeping Daemon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shredder2003вроде простейший вариант, но не работает.
к примеру, любые слова (шаблон \S+) заменить на LOM
Код: plaintext
1.
2.
bash- 3 . 00 $ echo 'OWNER = "LOPATA"' | sed -e s/\S+/LOM/g
OWNER = "LOPATA"

не работает, как видно.
что я делаю не так?
А что нужно сделать и что хначит \S ?
...
Рейтинг: 0 / 0
sed, не могу заюзать шаблон...
    #35865087
Bogerm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sleeping Daemon
А что нужно сделать и что хначит \S ?

Ктобы знал, чего сделать нужно :)

Автор, в Линуксе можно так попробовать:
echo 'OWNER = "LOPATA"' | sed -r s/\S+/LOM/g

\S - это extended regexp, а -e - это логический '&' для выполнения нескольких комманд в одной строке

В других системах ключи могут не совпадать...
...
Рейтинг: 0 / 0
sed, не могу заюзать шаблон...
    #35865236
Фотография Shredder2003
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Solaris

нужно заменить все выражения
Код: plaintext
1.
OWNER = "какой-то текст"
на
Код: plaintext
1.
OWNER = "ORACLE"
как я понял, юниксовые утилиты не работают с extended regexp... абыдно.
...
Рейтинг: 0 / 0
sed, не могу заюзать шаблон...
    #35865298
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shredder2003нужно заменить все выражения

На это хватит и обычных регэкспов:
Код: plaintext
1.
echo 'OWNER = "LOPATA"' | sed -e "s/OWNER = .*/OWNER = \"ORACLE\"/g"

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
sed, не могу заюзать шаблон...
    #35865383
Bogerm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shredder2003Solaris

нужно заменить все выражения
Код: plaintext
1.
OWNER = "какой-то текст"
на
Код: plaintext
1.
OWNER = "ORACLE"
как я понял, юниксовые утилиты не работают с extended regexp... абыдно.

Во-первых можно воспользоваться egrep, во-вторых можно переписать выражение sed:
echo 'OWNER = "LOPATA"' | sed 's/"\<.\+\>"/"Lopata"/g'
...
Рейтинг: 0 / 0
sed, не могу заюзать шаблон...
    #35868598
Фотография tchingiz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Bogerm,

вы случайно не горячитесь, заменяя ключ -e на -r, и удаляя его вообще?

автор
Usage: g:\bin\sed.EXE [OPTION]... {script-only-if-no-other-script} [input-file]...

-n, --quiet, --silent
suppress automatic printing of pattern space
-e script, --expression=script
add the script to the commands to be executed
-f script-file, --file=script-file
add the contents of script-file to the commands to be executed
--help display this help and exit
-V, --version output version information and exit
...
Рейтинг: 0 / 0
sed, не могу заюзать шаблон...
    #35868600
Фотография tchingiz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ато запутаете Shredder2003-ра
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / sed, не могу заюзать шаблон...
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]