The UNIX and Linux Forums  
Здравствуйте и добро от Соединенных Штатов UNIX и Linux Форумы! Благодарим Вас за посещение и вступления нашей мирового сообщества.

Go Back   В UNIX и Linux Форумы > Топ форумы > Shell программирование и сценарии
.
Google unix.com



Shell программирование и сценарии Почтовые вопросы о KSH, CSH, SH, BASH, Perl, PHP, SED, AWK и скрипты оболочки и оболочки скриптовых языков здесь.

Подробнее UNIX и Linux Темы форума можно найти полезные
Нить Резьба для начинающих Форум Ответы Последнее сообщение
заменить поля в CSV файл prvnrk Shell программирование и сценарии 2 11-12-2008 08:51 AM
заменить одно поле из 60 ajp7701 Shell программирование и сценарии 2 04-21-2008 07:17 PM
Заменить в поле CSV pcboss Linux 4 01-19-2008 06:24 PM
Заменить пароль области использования ED / SED Мунк UNIX для чайников Вопросы И Ответы 6 04-30-2007 11:01 PM
Заменить 10 Поле 2 PradeepRed Shell программирование и сценарии 2 01-19-2006 03:46 AM

Reply
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered By Powered by Google
 
LinkBack Резьба Инструменты Искать в этом Thread Оценить Thread Режимы дисплея
Old 06-03-2009
VGR VGR is offline
Зарегистрированный пользователь
  
 

Регистрация: Mar 2008
Место нахождения: Калькутта
Сообщений: 34
AWK заменить конкретной области

У меня плохие данные, например, использование заглавных букв в середине слова.
Я выявил ошибки, сделанные в списке, и поставить его в один файл error_correction.txt
Неправильно, исправить
VENOM, Venom
н.у.к., Н.У.К.
.
.
.



Мои данные файла выглядит следующим образом:
vgr, Бугатти Верон,, 3.5, Venom, 6 ,.......,....
vgr, lamborgini,, 3.5, н.у.к., 6 ,.......,....
ABC, Бугатти Верон,, 3.5, Venom, 6 ,.......,.......
.
.
.
.

Мне нужно заменить термины в 5-м местах в том, что из этого файла.
Как я могу сделать это, используя AWK??
Old 06-03-2009
joeyg's Avatar
joeyg joeyg is offline Forum Staff  
modérateur
  
 

Регистрация: Декабрь 2007
Место проведения: Дом 17-чемпион мира Бостон Celtics
Сообщений: 1311
Wink В качестве примера, чтобы вы начали ...

Код:
> echo "867 5309 VerNOM 1234 Abcd"
867 5309 VerNOM 1234 Abcd

> echo "867 5309 VerNOM 1234 Abcd" | awk -v v1="VerNOM" -v v2="Vernom" '{gsub(v1,v2,$3);print}'
867 5309 Vernom 1234 Abcd
Old 06-04-2009
VGR VGR is offline
Зарегистрированный пользователь
  
 

Регистрация: Mar 2008
Место нахождения: Калькутта
Сообщений: 34
Благодаря Joeyg ...
Я не был уверен, тихо, как вырывать значения из другого файла внутри AWK!
Как использовать осла. массив [хеш] внутри AWK??
Old 06-04-2009
Franklin52 Franklin52 is offline Forum Staff  
Модератор
  
 

Регистрация: Февраль 2007
Сообщения: 4307
Попробуйте это:

Код:
awk -F, '
NR==FNR{a[$1]=$2;next}
a[$5]{$5=a[$5]}
1' error_correction.txt datafile
Привет
Old 06-04-2009
VGR VGR is offline
Зарегистрированный пользователь
  
 

Регистрация: Mar 2008
Место нахождения: Калькутта
Сообщений: 34
им не уверен, тихо, почему это происходит ...
стоимость изменения внутри цикла, но не сохраняются в файл!
Old 06-04-2009
Franklin52 Franklin52 is offline Forum Staff  
Модератор
  
 

Регистрация: Февраль 2007
Сообщения: 4307
Этот файл не может быть изменен "на месте" с AWK. Перенаправление вывода в временный файл и заменить исходный файл с ним.

Код:
awk '<commands>' error_correction.txt datafile > tempfile
mv tempfile datafile
Old 06-04-2009
VGR VGR is offline
Зарегистрированный пользователь
  
 

Регистрация: Mar 2008
Место нахождения: Калькутта
Сообщений: 34
прохладно ...
Потрясающие вещи
Благодаря тонну человеком ....
Reply

Закладки

Резьба Инструменты Искать в этом Thread
Искать в этом Thread:

Расширенный поиск
Режимы дисплея Оценить эту ветку
Оценить эту ветку:

Отправка Правила
Вы не может Начать новую нитей
Вы не может Почтовые ответы
Вы не может Почтовые вложения
Вы не может Редактировать Ваши сообщения

BB код быть На
Смайлики являемся На
[IMG] код На
HTML-код Вне
Trackbacks являемся На
Pingbacks являемся На
Refbacks являемся На




Часовой пояс GMT -4. Текущее время 02:25 PM.


Powered By: Справка, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Язык Переводы на питание от .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
В UNIX и Linux форумы Содержание Copyright © 1993-2009. Все права Reserved.Ad управления по RedTyger

Содержание соответствующие URL-адреса в vBSEO 3.2.0