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 Темы форума можно найти полезные
Нить Резьба для начинающих Форум Ответы Последнее сообщение
Общие Shell скриптов для Архив файлов mak1600 Shell программирование и сценарии 8 07-26-2008 08:51 AM
Скрипт для очистки JP003 Shell программирование и сценарии 1 07-11-2008 06:42 AM
Файловый архив скриптов KeesH Shell программирование и сценарии 10 06-09-2008 11:11 AM
Создание архива скрипта jimmyc Shell программирование и сценарии 1 09-15-2007 04:02 AM
Прочитать из файла затем очистить или архив. kayarsenal Shell программирование и сценарии 15 08-10-2006 08:24 AM

Closed Thread
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 10-13-2008
regnumber regnumber is offline
Зарегистрированный пользователь
  
 

Регистрация: Oct 2008
Сообщений: 9
скрипт оболочки для очистки архив

Я пишу скрипт для Архив Purge за столом с рядами <1 год. Оболочка скрипта для извлечения строк из таблицы и писать эти строки добыто в текстовый файл. Затем из текстового файла, каждая из строк будет читать и исключить путем удаления запроса по одному. Поля будут определены путем голосования.

Например. ZB_RCVBL_TRACKER состоит из полей, в следующем.
ПХН, ACCNO, TRANCD, сумма LOB_TIMESTAMP
После извлечения строк и написан в виде текстового файла. Мне необходимо получить поля ПХН, ACCNO, TRANCD, LOB_TIMESTAMP из текстовых файлов и передать эти ценности на запрос

DELETE FROM ZB_RCVBL_TRACKER где ПХН \u003d? и ACCNO \u003d? и TRANCD \u003d? и LOB_TIMESTAMP \u003d?

Если SQLCODE 0, я могу приступить furthur.

Может кто поможет мне в достижении этой задачи.

Код:
==================================
#! /bin/ksh
############################
#   AFI Monitor Script
############################

. /db2/uszlad48/sqllib/db2profile
export mondir=/home/bmwdev1/script/krishna
export monlog=$mondir/Error_Report_`date +%Y%m%d`.log

export bakdir=/home/bmwdev1/script/krishna/bkup
export baklog=$bakdir/Error_Report_`date +%Y%m%d`_bkup.log

# connect to DB
#echo "connect to database r2pdev" >>$monlog

# extract the eligible rows from the table
db2 "SELECT * FROM ZB_RCVBL_TRACKER WHERE TIMESTAMP_UPDATED < (SYSDATE  1 YEAR)WITH UR"  >> $monlog
echo "After SQL execution" >> $monlog
==================================


Krishnakanth
Old 10-13-2008
cfajohnson's Avatar
cfajohnson cfajohnson is offline Forum Advisor  
Shell программист, автор
  
 

Регистрация: Mar 2007
Место проведения: Торонто, Канада
Сообщения: 2361

Код:
while read PCN ACCNO TRANCD AMOUNT LOB_TIMESTAMP
do

   db2 "DELETE FROM ZB_RCVBL_TRACKER where PCN = $PCN and \
       ACCNO=$ACCNO and TRANCD = $TRANCD and LOB_TIMESTAMP = $LOB_TIMESTAMP" || break

done < "$FILE"
Old 10-14-2008
regnumber regnumber is offline
Зарегистрированный пользователь
  
 

Регистрация: Oct 2008
Сообщений: 9
Спасибо за Ваш ответ Джонсон.

Здесь проблема заключается в том, как читать ПХН, ACCNO, TRANCD, сумма LOB_TIMESTAMP из текстового файла. Эти данные будут следующими в текстовый файл.

Цитата:

9564587 111222333 AD 563,85 2008 -10-01-00.00.00.000000
9564588 111222334 А.Е. 567,85 2008 -10-02-00.00.00.000000
9564589 111222335 АФ 963,85 2008 -10-03-00.00.00.000000
9564590 111222336 AH 566,85 2008 -10-04-00.00.00.000000
Эти данные, существующие в виде текстового файла в исходных данных. Длина каждого поля является фиксированной длины.
Это можно сделать как в следующем.
ПХН 7 байт, начиная с 1 по 7
accno 9 байт, начиная с 9 до 17
tran_cd 2 байта, начиная с 19 до 20
сумма составляет 8 байт, начиная с 22 до 29
LOB_TIMESTAMP составляет 26 байт, начиная с 30 до 55

мы можем определить, как это и будет передавать данные. Если да, то как определить в оболочке сценарий?

Не могли бы Вы, пожалуйста, дайте мне знать, как действовать furthur.

Krishnakanth
Old 10-14-2008
cfajohnson's Avatar
cfajohnson cfajohnson is offline Forum Advisor  
Shell программист, автор
  
 

Регистрация: Mar 2007
Место проведения: Торонто, Канада
Сообщения: 2361

Что случилось с Написал я сценарий?
Old 10-14-2008
regnumber regnumber is offline
Зарегистрированный пользователь
  
 

Регистрация: Oct 2008
Сообщений: 9
Джонсон,

Скрипт, что вы дали работает хорошо. Но в моем случае это другой.

Я дал образец того, что я работаю сейчас. Позвольте мне дать вам точный, что я работаю в настоящее время.

Ниже приводятся данные в текстовый файл. (db2 "SELECT TRACKING_NUM, TRACKING_NUM_SUFFIX, ERROR_SRC_CD, MSG_NUM, MSG_ID, MSG_TYP, MSG_TEXT, TIMESTAMP_UPDATED, USER_UPDATED ИЗ ZB_RCBL_ERROR_MSG_MIG С UR">> $ monlog1)

Цитата:
12345 10 E-123 - - - Здравствуйте, - --
12345 10 E - - - Здравствуйте, - --
12345 10 - - - Здравствуйте, - --
12345 T 10 - - - Здравствуйте, - --
1234 15 - - - - ERROR - --
123456 10 - - - - Ошибки - --
123456 10 - - - - Ошибки - --
255678 200 - - - - ERRORCORRECTION - --
255678 200 - - - - ERRORCORRECTION - --
1111111111 10 - - - - - - --
7890 10 ERRORMSG 90 78 E ERROR 2008-08-11-06.53.12.924263 R2P
12345 11 eadf j123 10 E это emsg 2008-08-11-14.05.11.745265 --
12345 11 eadf j123 10 E это emsg 2008-08-12-09.39.38.886385 --
12345 11 eadf j123 10 E это emsg 2008-08-12-09.42.21.223536 --
12345 11 eadf j123 10 E это emsg 2008-08-12-09.48.57.911702 --
12345 11 eadf j123 10 E это emsg 2008-08-12-09.49.59.296360 --
22345 11 Ошибка j123 10 E это emsg 2008-08-12-10.08.33.843147 привет
255679 25 - - - - - - --
BEYJYWG83L 0 R 902 - B Система исключение произошло, обратитесь к BMW_EXCEPTION_LOG таблицу 2008-09-10-00.41.32.787352
BEYJYXMT4K 0 R 902 - B Система исключение произошло, обратитесь к BMW_EXCEPTION_LOG таблицу 2008-09-11-19.01.23.878551
BEYEHF93QY 0 R 003 B не существует в сообщении ZBV_BILL_REJCT_RSN стол 2008-08-28-16.31.01.881717
BEYJYTT8FQ 0 R 013 B Неверный код операции 2008-09-04-17.39.04.005237
BEYJYTT8FQ 0 R 016 B Недействительный Плата кодекса 2008-09-04-17.39.04.008137
BEYJYTT8FQ 0 R 016 B Недействительный Плата кодекса 2008-09-04-17.39.04.011939
BEYJYTT8FQ 0 R 016 B Недействительный Плата кодекса 2008-09-04-17.39.04.012851
BEYJY2SZVL 0 R 003 B Политика / Контракт Номер счета находятся в ZB_MASTER_DATA_LOG 2008-09-16-09.22.29.120192
BEYJY2SXNG 0 R 003 B Политика / Контракт Номер счета находятся в ZB_MASTER_DATA_LOG 2008-09-16-09.19.33.868772
BEYJY2SMS3 0 R 003 B Политика / Контракт Номер счета находятся в ZB_MASTER_DATA_LOG 2008-09-16-08.53.07.872138
BEYJY2SMJD 0 R 003 B Политика / Контракт Номер счета находятся в ZB_MASTER_DATA_LOG 2008-09-16-08.50.17.307262
BEYJY2EG2K 0 R 003 B Политика / Контракт Номер счета находятся в ZB_MASTER_DATA_LOG 2008-09-17-15.56.03.418917
002211556 0 R 001 B Идентичные получению сделка уже размещен для этой политики. 2008-09-19-01.41.01.454234
002211556 0 R 002 B Один или несколько неразминированных errored дебиторской задолженности за политику 2008-09-23-01.36.07.982876
002211556 0 R 002 B Один или несколько неразминированных errored дебиторской задолженности за политику 2008-09-23-01.38.44.515880
002211556 0 R 001 B Идентичные получению сделка уже размещен для этой политики. 2008-09-23-16.32.20.565704
6634583444 0 R 902 - J Система исключение произошло, обратитесь к BMW_EXCEPTION_LOG таблицу 2008-09-15-12.44.09.383234

Если я предоставляю следующий сценарий.

Цитата:
а читать TRACKING_NUM TRACKING_NUM_SUFFIX ERROR_SRC_CD MSG_NUM MSG_ID MSG_TYP MSG_TEXT TIMESTAMP_UPDATED USER_UPDATED
делать

db2 "SELECT TRACKING_NUM, TRACKING_NUM_SUFFIX, ERROR_SRC_CD, MSG_NUM, MSG_ID, MSG_TYP, MSG_TEXT, TIMESTAMP_UPDATED, USER_UPDATED ИЗ ZB_RCBL_ERROR_MSG_MIG ГДЕ TRACKING_NUM \u003d $ TRACKING_NUM И TRACKING_NUM_SUFFIX \u003d $ TRACKING_NUM_SUFFIX И TIMESTAMP_UPDATED \u003d $ TIMESTAMP_UPDATED С UR">> $ monlog2

Готово < "$ FILE"
Скрипт, что вы дали не работает, в этом случае. Bacause ценность области MSG_TEXT, как "идентичные получению сделка уже размещен для этой политики". 73 байт длиной.

Пожалуйста, дайте мне знать, как действовать furthur.

Krishnakanth
Old 10-14-2008
cfajohnson's Avatar
cfajohnson cfajohnson is offline Forum Advisor  
Shell программист, автор
  
 

Регистрация: Mar 2007
Место проведения: Торонто, Канада
Сообщения: 2361

Пожалуйста, поставьте код и выборки данных внутри [код] тэги, а не [цитата] теги.

Тест скрипта на эстафету команда вместо выполнения ее.
Код:
echo db2 "SELECT TRACKING_NUM, TRACKING_NUM_SUFFIX, ERROR_SRC_CD, MSG_NUM, MSG_ID, MSG_TYP, MSG_TEXT, TIMESTAMP_UPDATED, USER_UPDATED FROM ZB_RCBL_ERROR_MSG_MIG WHERE TRACKING_NUM = $TRACKING_NUM AND TRACKING_NUM_SUFFIX = $TRACKING_NUM_SUFFIX AND TIMESTAMP_UPDATED = $TIMESTAMP_UPDATED WITH UR"
Убедитесь, что у вас есть линия построена правильно перед удалением эхо.
Closed Thread

Закладки

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

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

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

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




Часовой пояс GMT -4. Текущее время 10:31 AM.


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