|
|
|
преобразование файла (редактирование)
|
|||
|---|---|---|---|
|
#18+
есть такой файл 2006-10-24 00:01:19 CVB00 2000010 *** AIS - alarm indication signal |Port 235 | 2006-10-24 00:01:22 CVB00 2000010 --- AIS - alarm indication signal |Port 235 | 2006-10-24 00:01:22 CVB00 2000010 *** AIS - alarm indication signal |Port 235 | 2006-10-24 00:01:23 CVB00 2000010 --- AIS - alarm indication signal |Port 235 | 2006-10-24 09:45:04 cvb00 1000310 *** Wrong IVx identity |Board 2 | нужно что-бы выглядело так 2006-10-24 00:01:19 CVB00 2000010 *** Port 235 AIS - alarm indication signal 2006-10-24 00:01:22 CVB00 2000010 --- Port 235 AIS - alarm indication signal 2006-10-24 00:01:22 CVB00 2000010 *** Port 235 AIS - alarm indication signal 2006-10-24 00:01:23 CVB00 2000010 --- Port 235 AIS - alarm indication signal 2006-10-24 09:45:04 cvb00 1000310 *** Board 2 Wrong IVx identity с помощью этого не получается, в чем ошибка $ awk '{printf("%s %-10s %s\n",substr($0,0,37),$2,substr($0,39))}' FS="|" t.dat ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 13:40:20 |
|
||
|
преобразование файла (редактирование)
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. There Ain't No Such Thing As A Free Lunch ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 20:20:12 |
|
||
|
преобразование файла (редактирование)
|
|||
|---|---|---|---|
|
#18+
НаташаXX, Ваша ошибка в том, что второй substr у Вас базировался тоде на $0, что неверно надо было так awk '{printf("%s %-10s %s\n",substr($0,0,37),$2,substr($1,39))}' FS="|" хотя я не люблю считать длинные цифирки типа 37,39 и сделал бы так: awk -F"|" '{i=match($0,"\\*\\*\\*|---");print substr($0,1,i+3) $2 substr($1,i+4,length($1))}' P.S. в перловом варианте лишний пробел получился, пофиксить надо. Типа того perl -ne 's/(.+)([*-]{3}) (.+)\|(.*)\|/\1\2 \4\3/; print;' <test.txt ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2006, 12:55:30 |
|
||
|
преобразование файла (редактирование)
|
|||
|---|---|---|---|
|
#18+
--null--НаташаXX, Ваша ошибка в том, что второй substr у Вас базировался тоде на $0, что неверно надо было так awk '{printf("%s %-10s %s\n",substr($0,0,37),$2,substr($1,39))}' FS="|" хотя я не люблю считать длинные цифирки типа 37,39 и сделал бы так: awk -F"|" '{i=match($0,"\\*\\*\\*|---");print substr($0,1,i+3) $2 substr($1,i+4,length($1))}' P.S. в перловом варианте лишний пробел получился, пофиксить надо. Типа того perl -ne 's/(.+)([*-]{3}) (.+)\|(.*)\|/\1\2 \4\3/; print;' <test.txt Я поняла ошибку, но %-10 s не работает, т.е. $2 выводит 2006-10-24 00:01:19 CVB00 2000010 2006-10-24 00:01:22 CVB00 2000010 вместо Port 235 AIS Port 235 AIS ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 07:19:22 |
|
||
|
преобразование файла (редактирование)
|
|||
|---|---|---|---|
|
#18+
--null--НаташаXX, Ваша ошибка в том, что второй substr у Вас базировался тоде на $0, что неверно надо было так awk '{printf("%s %-10s %s\n",substr($0,0,37),$2,substr($1,39))}' FS="|" хотя я не люблю считать длинные цифирки типа 37,39 и сделал бы так: awk -F"|" '{i=match($0,"\\*\\*\\*|---");print substr($0,1,i+3) $2 substr($1,i+4,length($1))}' P.S. в перловом варианте лишний пробел получился, пофиксить надо. Типа того perl -ne 's/(.+)([*-]{3}) (.+)\|(.*)\|/\1\2 \4\3/; print;' <test.txt Я поняла ошибку, но %-10 s не работает, т.е. $2 выводит 2006-10-24 00:01:19 CVB00 2000010 2006-10-24 00:01:22 CVB00 2000010 вместо Port 235 AIS Port 235 AIS ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 07:26:48 |
|
||
|
преобразование файла (редактирование)
|
|||
|---|---|---|---|
|
#18+
НаташаXX[quot --null--]НаташаXX, Ваша ошибка в том, что второй substr у Вас базировался тоде на $0, что неверно надо было так awk '{printf("%s %-10s %s\n",substr($0,0,37),$2,substr($1,39))}' FS="|" хотя я не люблю считать длинные цифирки типа 37,39 и сделал бы так: awk -F"|" '{i=match($0,"\\*\\*\\*|---");print substr($0,1,i+3) $2 substr($1,i+4,length($1))}' P.S. в перловом варианте лишний пробел получился, пофиксить надо. Типа того perl -ne 's/(.+)([*-]{3}) (.+)\|(.*)\|/\1\2 \4\3/; print;' <test.txt Спасибо, вы все такие умнички ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 07:50:08 |
|
||
|
|

start [/forum/topic.php?fid=25&msg=34156543&tid=1488759]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
43ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
| others: | 229ms |
| total: | 357ms |

| 0 / 0 |
