powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / shell - убрать одинаковые символы в строке.
11 сообщений из 36, страница 2 из 2
shell - убрать одинаковые символы в строке.
    #33260615
Фотография lissyara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
 7830127 *##PPxxxxxx# 78672518525 
 7830127 *#PPPхххххх# 78672518525 #
 7830127 *#PPххххххх# 78672518525 
 7830127 *#PPххххххх# 78672362532 ##

Маленькие иксы - пароль доступа. Несколько цифр. Его набирает сама АТС,
потому это та часть которая стабильна :)


Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
shell - убрать одинаковые символы в строке.
    #33260645
Фотография v6y
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lissyara
Код: plaintext
1.
2.
3.
 7830127 *##PPxxxxxx# 78672518525 
 7830127 *#PPPхххххх# 78672518525 #
 7830127 *#PPххххххх# 78672518525 
 7830127 *#PPххххххх# 78672362532 ##

Маленькие иксы - пароль доступа. Несколько цифр. Его набирает сама АТС,
потому это та часть которая стабильна :)


Posted via ActualForum NNTP Server 1.3

Так для таких номеров это равносильно просто
Код: plaintext
1.
echo ${incoming} |  awk -F \# '{print $3}'

??????
...
Рейтинг: 0 / 0
shell - убрать одинаковые символы в строке.
    #33260678
--null--
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
давайте еще помусолим :-)


Очень эффективно обработать без конвейров, одним awk-ом
к сожалению в варианте

Код: plaintext
echo ${incoming} |  awk -F \# '{print $3}'
первая строчка обрабатывается некорректно

я бы предложил

Код: plaintext
cat incoming  | awk -F\#* '{if(!length($NF)==0){print $NF} else print $(NF-1)}'


т.е. как разделитель регулярка рулит
...
Рейтинг: 0 / 0
shell - убрать одинаковые символы в строке.
    #33260683
--null--
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
шизую...

Код: plaintext
cat incoming  | awk -F\#* '{print $3}'

:-)
...
Рейтинг: 0 / 0
shell - убрать одинаковые символы в строке.
    #33260686
Фотография lissyara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я же не совсем дурак....
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
/usr/home/lissyara/>echo "7830127*###PPxxxxxx##78672518525" | awk -F \# 
'{print $6}'
 78672518525 
/usr/home/lissyara/>echo "7830127*##PPxxxxxx##78672518525" | awk -F \# 
'{print $6}'

/usr/home/lissyara/>



Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
shell - убрать одинаковые символы в строке.
    #33260687
Фотография v6y
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[quot v6y]
Так для таких номеров это равносильно просто
Код: plaintext
1.
echo ${incoming} |  awk -F \# '{print $3}'

/quot]
Тьфу ты блин, конечно же имелось ввиду
Код: plaintext
1.
echo ${incoming} |  awk -F  "[#]+"  '{print $3}'

Под Линуксом можно и так
Код: plaintext
1.
echo ${incoming} |  awk -F  "#+"  '{print $3}'
но фиг его знает как оно под БСД среагирует
...
Рейтинг: 0 / 0
shell - убрать одинаковые символы в строке.
    #33260689
Фотография lissyara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вначале их надо полюбому по одному сделать (шарпы)


Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
shell - убрать одинаковые символы в строке.
    #33260698
--null--
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
зачем если мы говорим "бери разделителем символ или такие символы подряд как один". И awk это поймет. И простит :-)
...
Рейтинг: 0 / 0
shell - убрать одинаковые символы в строке.
    #33260700
Фотография v6y
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lissyara
Вначале их надо полюбому по одному сделать (шарпы)


Posted via ActualForum NNTP Server 1.3
Очепятался я, уже исправил Почитай лучше про регулярные выражения
...
Рейтинг: 0 / 0
shell - убрать одинаковые символы в строке.
    #33260704
Фотография lissyara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 v6y
а последний вариант пашет.
awk -F "[#]+" '{print $3}'


Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
shell - убрать одинаковые символы в строке.
    #33260716
Фотография v6y
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lissyara
2 v6y
а последний вариант пашет.
awk -F "[#]+" '{print $3}'


Posted via ActualForum NNTP Server 1.3

А куда он денется? Это означает: Разделителем между полями есть один и более символов '#'
...
Рейтинг: 0 / 0
11 сообщений из 36, страница 2 из 2
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / shell - убрать одинаковые символы в строке.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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