
|
 |
|
ВНИМАНИЕ: Използвайте форумите на сайта за дa зададете вашите въпроси.
| Въпрос |
| От: todor |
Дата: 10/30/2004 |
Здравейте,
налага ми се да напиша един по-сложен скрипт за sh и за сега
не мога да се оправя.
Задачата е следната :
имам програмка която връща индормациа от един ред текст от
типа
text1 text2 334455 1122
Където text1 и text2 са произволни текстове, а 334455 и 1122
са различни числа.
По принцип текстовете се различават всеки път и са с
различна дължина.
Трябва ми скрипт с който да получа само първото от числата в
реда. В случая 334455.
Второто число не ми трябва.
Някой може ли да помогне?
В този сайт успях да намеря кратко ръководство за bash, но
там не се описва манипулацията на стрингове.
Благодаря предварително.
|
| Отговор #1 |
| От: DobriL |
Дата: 10/30/2004 |
awk '{ print $3 }' file
tova predpolagam shte ti svurshi tabota =)
|
| Отговор #2 |
| От: todor |
Дата: 10/30/2004 |
Благодаря за отговора,
почти ми върши работа.
Проблема е, че колоните са раделени с | .
И всъщност текста е :
| text 1 | text 2| 2342 | ....
И като резултат получавам :
2342 (в началото има интервал и той обърква следващия
скрипт.
Има ли начин да махна интервалите?
|
| Отговор #3 |
| От: DobriL |
Дата: 10/30/2004 |
Emi promeni $3 na obekta koito e $3 zna4i 3-ti obekt
razdelen s interval
btw man awk
|
| Отговор #4 |
| От: qq |
Дата: 10/31/2004 |
man sed
sed 's/ | //'
man grep
grep -o "qqq"
|
| Отговор #5 |
| От: todor |
Дата: 10/31/2004 |
Благодаря за отговорите.
Сега работи както трябва.
|
<< Kernel Kompilirane (2
) | копи и пейст във ВИ (3
) >>
|
|
|
|
|
|