![]() |
|
|
Google unix.com
|
|||||||
| Форумы | Регистрация | Правила форума | Ссылки | Альбомы | ЧАВО | Список участников | Календарь | Поиск | Сегодняшние сообщения | Отметить форумы читать |
| Shell программирование и сценарии Почтовые вопросы о KSH, CSH, SH, BASH, Perl, PHP, SED, AWK и скрипты оболочки и оболочки скриптовых языков здесь. |
Подробнее UNIX и Linux Темы форума можно найти полезные
|
||||
| Нить | Резьба для начинающих | Форум | Ответы | Последнее сообщение |
| комбинирования полей в двух текстовых полях | бульварный роман | Shell программирование и сценарии | 3 | 01-16-2008 11:27 AM |
| сократить: получить один или два поля | maxvirrozeito | Shell программирование и сценарии | 3 | 12-17-2007 11:58 AM |
| Вырезать Последние 3 Поля | Bourne | Shell программирование и сценарии | 4 | 01-11-2007 05:17 AM |
| Последнее поля | Khoomfire | UNIX перспективных И опытных пользователей | 3 | 04-13-2006 06:03 PM |
| Как сократить поля | rajan_ka1 | Shell программирование и сценарии | 1 | 12-29-2005 05:55 AM |
![]() |
|
|
LinkBack | Резьба Инструменты | Искать в этом Thread | Оценить Thread | Режимы дисплея |
|
|
|
||||
|
Определение и замена полей с AWK
# кота BATCH007.TXT
01,661060052,061000104,081118,0915,07,80,1,2 / 99,,, 2 / У меня этот файл называется BATCH007.TXT. Я пытаюсь изменить полей 2 и 3 на линии 2 имеют нулей. Подобно этому: 01,661060052,061000104,081118,0915,07,80,1,2 / 99,0,0,2 / Я могу использовать эти команды на печать выявить области, которые возвращают пустое значение, так как они должны: голову -2 BATCH007.TXT | хвост-1L | AWK '(FS \u003d","} (печати $ 2)' голову -2 BATCH007.TXT | хвост-1L | AWK '(FS \u003d","} (печати $ 3)' Думаю, я близко. Я добавил gusb приведенной выше команды, но вывод неверен: голову -2 BATCH007.TXT | хвост-1L | AWK-F "," '(gsub ($ 2, "0");) печатать' BATCH007.TXT> D.new $ кота D.new 01,661060052,0,081118,0915,07,80,1,2 / 09090,0,0,020 / 0 Есть ли какие-либо предложения? |
|
||||
|
Похоже домашние мне
|
|
||||
|
Привет, Я не знаю точно, что вы пытаетесь сделать, но если вы хотите изменить линию 2 вам файл, это должно быть достаточно: Код:
sed "/^99/s/,,,/,0,0,/g" file То есть: перейти на линию, начиная с 99 и по этой строке заменить три kommas в ряду путем, 0,0, HTH Крис |
![]() |
| Закладки |
| Резьба Инструменты | Искать в этом Thread |
| Режимы дисплея | Оценить эту ветку |
|
|