The OpenNET Project / Index page

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

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

"Bash vs Dash - подстановка управляющих символов"  +/
Сообщение от AlAdin (ok) on 14-Авг-16, 07:20 
Надо найти в файле первую пустую строку (получить смещение байта). Файл является частью HTML-формы и пустая строка, кроме \n содержит ещё и \r. В общем, надо найти строку типа '^\r$'.

В bash-е команда
grep -bxm1 $'\r'
работает как ожидается.

В dash-е пишу
grep -bxm1 '\r'
ошибок не выдаёт, но и результата нет. Хотя если искать какой-то "реальный символ", то выдаёт предсказуемое значение.

Как подставить управляющий символ?

Спасибо

Ответить | Правка | Cообщить модератору

Оглавление

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


1. "Bash vs Dash - подстановка управляющих символов"  +/
Сообщение от XAnder (ok) on 14-Авг-16, 15:24 
Например:


CR=`printf '\r'`
grep -bxm1 "$CR"

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Bash vs Dash - подстановка управляющих символов"  +/
Сообщение от AlAdin (ok) on 15-Авг-16, 04:14 
Спасибо, работает.

Но как объяснить "неподставляемость" в Dash \r?

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

3. "Bash vs Dash - подстановка управляющих символов"  +/
Сообщение от XAnder (ok) on 15-Авг-16, 08:38 
> Но как объяснить "неподставляемость" в Dash \r?

Оно и не должно подставляться. Наоборот, $'\r' — это башевское расширение, без «$» и в баше будет «неподставляемость». Комбинации \<буква> в норме работают только с командами echo и printf. Ну у echo там свои тараканы, так что я использовал printf.

Рекомендую сравнить, как всё это описано в man bash и man dash.

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

4. "Bash vs Dash - подстановка управляющих символов"  +/
Сообщение от AlAdin (ok) on 16-Авг-16, 01:13 
Спасибо. Попробую почитать.

Где б ещё перевод man dash посмотреть? А то язык Шекспира нашего нихтфирштейн :)


Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

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

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Спонсоры:
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

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