Программирование на sh, быть может немного про альтернативные языки
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
Bayerische
- капитан
- Сообщения: 1820
- Зарегистрирован: 2010-12-25 20:41:50
- Откуда: Хлебная столица
Непрочитанное сообщение
Bayerische » 2012-05-10 20:22:44
По первому заданию тупо в лоб
Код: Выделить всё
cat file.txt | awk '{print 1 " " $1}' | grep aaa ; cat file.txt | awk '{print 2 " " $2}' | grep aaa ; cat file.txt | awk '{print 3 " " $3}' | grep aaa ; cat file.txt | awk '{print 4 " "$4}' | grep aaa ; cat file.txt | awk '{print 5 " " $5}' | grep aaa
Bayerische
-
Хостинг HostFood.ru
-
Хостинг HostFood.ru
Тарифы на хостинг в России, от 12 рублей:
https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.:
https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах:
https://www.host-food.ru/domains/
-
Andrey__S
- проходил мимо
Непрочитанное сообщение
Andrey__S » 2012-05-11 20:43:19
По первому можно проще
cat file | awk ' { for (i = 1; i <= NF; i++) print $i }' | awk '/aaa=/ { print }'
2-е пока ХЗ
Andrey__S
-
Andrey_S
- проходил мимо
Непрочитанное сообщение
Andrey_S » 2012-05-11 23:15:33
2-е
cat file | awk '{for(i=1;i<=NF;i++) if ($i~/aaa/) {a=$i} else if ($i~/bbb/) {b=$i} else if ($i~/ccc/) {c=$i} else if ($i~/ddd/) {d=$i} else if ($i~/eee/) {e=$i}{print a,b,c,d,e}}'
aaa=1 bbb=2 ccc=3 ddd=4 eee=5
aaa=2 bbb=3 ccc=4 ddd=5 eee=1
aaa=3 bbb=4 ccc=5 ddd=1 eee=2
aaa=4 bbb=5 ccc=1 ddd=2 eee=3
aaa=5 bbb=1 ccc=2 ddd=3 eee=4
Andrey_S
-
kpp
- лейтенант
- Сообщения: 613
- Зарегистрирован: 2009-08-05 16:10:46
- Откуда: Украина Днепропетровск-Киев
-
Контактная информация:
Непрочитанное сообщение
kpp » 2012-09-24 17:57:35
Где я был?
По 1-му :
По 2-му подумаю на досуге
Нет, ребята, я не гордый. Не загадывая вдаль, так скажу: зачем мне орден? Я согласен на медаль.
kpp
-
kpp
- лейтенант
- Сообщения: 613
- Зарегистрирован: 2009-08-05 16:10:46
- Откуда: Украина Днепропетровск-Киев
-
Контактная информация:
Непрочитанное сообщение
kpp » 2012-09-25 12:47:40
2-е:
Код: Выделить всё
per_a="`grep -o "aaa=[0-9]" vhod`"
per_b="`grep -o "bbb=[0-9]" vhod`"
per_c="`grep -o "ccc=[0-9]" vhod`"
per_d="`grep -o "ddd=[0-9]" vhod`"
per_e="`grep -o "eee=[0-9]" vhod`"
lin=0
for i in ${per_a}
do
lin=$((${lin}+1))
echo "${i} \
`echo "${per_b}" | sed -n ${lin}p` \
`echo "${per_c}" | sed -n ${lin}p` \
`echo "${per_d}" | sed -n ${lin}p` \
`echo "${per_e}" | sed -n ${lin}p`"
done
Нет, ребята, я не гордый. Не загадывая вдаль, так скажу: зачем мне орден? Я согласен на медаль.
kpp
-
kpp
- лейтенант
- Сообщения: 613
- Зарегистрирован: 2009-08-05 16:10:46
- Откуда: Украина Днепропетровск-Киев
-
Контактная информация:
Непрочитанное сообщение
kpp » 2012-09-25 13:38:58
Или так:
Код: Выделить всё
sed 's/\(^.*\)\(aaa=[0-9]\)\(.*\)/\2 \1\3/' vhod | tr -s "[ ]" |\
sed 's/\([^ ]*\)\{1\}\(.*\)\([^b]*bbb=[0-9]\)\(.*\)/\1 \3\2\4/' | tr -s "[ ]" |\
sed 's/\(\([^ ]* \)\{2\}\)\(.*\)\([^c]*ccc=[0-9]\)\(.*\)/\1\4 \3\5/' | tr -s "[ ]" |\
sed 's/\(\([^ ]* \)\{3\}\)\(.*\)\([^d]*ddd=[0-9]\)\(.*\)/\1\4 \3\5/' | tr -s "[ ]"
Нет, ребята, я не гордый. Не загадывая вдаль, так скажу: зачем мне орден? Я согласен на медаль.
kpp