The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"sed - ошибка при добавлении строки при работе через ssh"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [ Отслеживать ]

"sed - ошибка при добавлении строки при работе через ssh"  
Сообщение от Krash on 22-Мрт-09, 10:39 
Здравствуйте, может кто подскажет...

пробую использовать sed для добавления новой строки (22222) после строки, содержащей (11111).
Использую для этого конструкцию:

sed -i '/11111/a 22222' /home/user/file1.txt
- всё отлично отрабатывает, но если пробую эту конструкцию использовать через SSH

ssh user@192.168.0.1 sed -i '/11111/a 22222' /home/user/file1.txt
- получаю ошибку -
sed: -e expression #1, char 8: expected \ after `a', `c' or `i'

Не могу понять, почему при работе через ssh вылезает ошибка в синтаксисе и как её исправить...

Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "sed - ошибка при добавлении строки при работе через ssh"  
Сообщение от slava.semushingmail.com on 22-Мрт-09, 12:56 
>[оверквотинг удален]
>- всё отлично отрабатывает, но если пробую эту конструкцию использовать через SSH
>
>
>ssh user@192.168.0.1 sed -i '/11111/a 22222' /home/user/file1.txt
>- получаю ошибку -
>sed: -e expression #1, char 8: expected \ after `a', `c' or
>`i'
>
>Не могу понять, почему при работе через ssh вылезает ошибка в синтаксисе
>и как её исправить...

Видимо на другой стороне у вас другой sed, который более строго относится к вашему выражению. В мане, например, написано:

       a \

       текст  Добавить текст, где каждое вхождение новой строки начинается  со
              знака обратного слэша.

И в ошибке у  вас написано, что он ожиждает увидеть символ обратного слэша после команды a

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "sed - ошибка при добавлении строки при работе через ssh"  
Сообщение от Krash on 22-Мрт-09, 13:24 
>[оверквотинг удален]
>
>       a \
>
>       текст  Добавить текст, где
>каждое вхождение новой строки начинается  со
>            
>  знака обратного слэша.
>
>И в ошибке у  вас написано, что он ожиждает увидеть символ
>обратного слэша после команды a

Странно то, что если я подключаюсь по SSH на компьютер PC1 и запускаю на нём
sed -i '/11111/a 22222' /home/user/file1.txt
то всё отрабатывает нормально,
а если с компьютера PC2 выполняю
ssh PC1 sed -i ''/11111/a 22222' /home/user/file1.txt'
и sed на том же PC1 вываливается с указанной ошибкой...

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "sed - ошибка при добавлении строки при работе через ssh"  
Сообщение от Andrey (??) on 23-Мрт-09, 05:18 
Попробуйте так:
ssh user@192.168.0.1 "sed -i '/11111/a 22222' /home/user/file1.txt"
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "sed - ошибка при добавлении строки при работе через ssh"  
Сообщение от Krash on 23-Мрт-09, 11:07 
>Попробуйте так:
>ssh user@192.168.0.1 "sed -i '/11111/a 22222' /home/user/file1.txt"

Большое спасибо, помогло, всё отрабатывает корректно.


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру