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

Go Back   В UNIX и Linux Форумы > Топ форумы > UNIX для чайников Вопросы И Ответы
.
Google unix.com



UNIX для чайников Вопросы И Ответы Если вы не уверены в том, где разместить UNIX или Linux вопрос, задайте его здесь. Все UNIX и Linux приветствуем новичков!!

Подробнее UNIX и Linux Темы форума можно найти полезные
Нить Резьба для начинающих Форум Ответы Последнее сообщение
Читайте в CSV Хэш массив? kinmak Shell программирование и сценарии 1 05-07-2008 10:35 AM
создать массив проведение символы sring затем повторить массива. rorey_breaker Shell программирование и сценарии 5 09-28-2007 08:42 AM
Из файла в массив Рок Shell программирование и сценарии 2 02-08-2007 06:10 AM
Дамп массива в файл IMD Shell программирование и сценарии 3 08-31-2006 10:04 AM
Как я читаю массиве элементы динамически в Bash? haisubbu UNIX для чайников Вопросы И Ответы 1 08-29-2006 02:19 AM

 
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-05-2007
Pinky pinky is offline
Зарегистрированный пользователь
  
 

Регистрация: Jul 2007
Сообщений: 33
Как читать из текстового файла и использовать его в качестве массива

Привет ребята

Какие у всех дела?

У меня недостаточно времени, для достижения этой цели я Unix. KSH скрипт, который призывает
SQL-скрипта

Сейчас я harcoded колонку ID в SQL-скрипта, но я хочу, чтобы читать их из текстового файла
1084,1143,1074,1080,1091,1090,1101,1069,1104,1087,1089,1081

Я хочу, чтобы читать этот файл как массив в моих сценариев SQL


Моя KSH сценария



#! / USR / BIN / KSH
DIRNAME \u003d `dirname $ 0`
# Созданы условия для Oracle основаны экземпляра базы СМО
. $ DIRNAME / defaults_env.ksh

Эхо "Введите регион (т.е. 001 или 002):"
Читайте sdzone;
Экспорт UserFile \u003d "cvsusers.txt"
LOGFILE \u003d $ DIRNAME / cvs_users_defaults.log
ВРЕМЯ \u003d `Дата`

# проверку, чтобы убедиться, что файлы журнала присутствует, если нет, то это создает
если [-A $ DIRNAME / cvs_users_defaults.log]
тогда
:
еще
прикасаться $ DIRNAME / cvs_users_defaults.log
FI

# Проверка, если файл данных (cvsusers.txt) существует для загрузки.
если [-DIRNAME $ / $ UserFile]
тогда
# Список идентификаторов поставляется из идентификатор файла


INFILE \u003d $ UserFile;
Эхо "Использование файла $ INFILE в качестве вклада в User ID";
Эхо "";
Эхо "начал процесс по $ TIME">> $ LOGFILE
Эхо "Вызов процедуры инициализации пользователей"
для идентификатора в `Cat` $ INFILE
делать
Эхо "Хранение пользователя по умолчанию для пользователя" $ USERID>> $ LOGFILE
userIdLength \u003d `выражение длины $ USERID`
если [$ userIdLength-GT 8]
тогда
Эхо "Длина UserID" $ USERID "слишком длинным">> $ LOGFILE
еще
Эхо "Подключение к SQL">> $ LOGFILE

если [[$ sdzone \u003d '001 ']], затем
sqlplus-S $ ZONE1_USERNAME_525 / $ ZONE1_PASSWRD_525 @ $ ZONE1_DBNAME_525 \ @ $ DIRNAME / SQL / cvs_users_defaults.sql $ USERID>> LOGFILE
Эхо ", связанные с SQL">> $ LOGFILE


Elif [[$ sdzone \u003d '002 ']], затем
sqlplus-S $ ZONE2_USERNAME_525 / $ ZONE2_PASSWRD_525 @ $ ZONE2_DBNAME_525 \ @ $ DIRNAME / SQL / cvs_users_defaults.sql $ USERID>> LOGFILE
Эхо ", связанные с SQL">> $ LOGFILE


еще
Эхо "Неверный код региона!"
выхода;
FI

FI
готово


# переименовать файл после обработки
logtime \u003d `дата" +% Y% M% D% H% M% S "`
newUserFile \u003d "cvs_users_processed_" $ logtime ". TXT"
М. В. UserFile $ $ newUserFile

Эхо "Завершение процесса настройки пользователя по умолчанию в $ TIME">> $ LOGFILE
Эхо "Проверить файл на $ LOGFILE"
выход 0
еще
# IF "custsoncologyusers.txt" Файл не существует в DIRNAME затем конец грациозно
Эхо "Нет пользователя по умолчанию файл ($ userFile) доступен для загрузки"
Эхо "Нет файлов пользователя по умолчанию ($ UserFile) доступен для загрузки">> $ LOGFILE
Эхо "Завершение процесса пользователь по умолчанию с кодом возврата 0 в $ TIME">> $ LOGFILE
выход 0
FI


Это моя SQL-скрипта (cvs_users_defaults.sql)

WHENEVER SQLERROR EXIT SQL.SQLCODE;
установить на serveroutput;
установить проверить границы;
установить обратную связь от;

объявить
идентификатор s_user_cust_acct.user_id% TYPE: \u003d '& 1';
Тип t_col_id_tab ЕСТЬ ТАБЛИЦА числа;
my_col_id t_col_id_tab;
Тип t_col_seq_num_tab ЕСТЬ ТАБЛИЦА числа;
my_col_seq_num t_col_seq_num_tab;
Тип t_all_col_id_tab ЕСТЬ ТАБЛИЦА числа;
all_col_id t_all_col_id_tab;
tcount номер;
начинать
выберите COUNT (*)
в tcount
от s_column_atrb
где user_id \u003d UPPER (UserID)
и screen_typ_cd \u003d 0;
если (tcount> 0) THEN
dbms_output.put_line ( 'Обновление s_column_atrb' | | UserID);

- Для заказов (Я жестко заданы массив, но я хочу, чтобы этого не читал. KSH сценария введения в нее с TXT-файл)
all_col_id: \u003d t_all_col_id_tab (1069,1071,1072,1073,1074,1075,1076,1077,1078,1080,1081,1082,1083,1084,1085,1086,108 7,1088,1089,1090,1091,1101, 1102,1103,1104,1114,1115,1116,1117,1118,1119,1120,1122,1123,1124,1125,112 6,1127,1128,1129,1130,1131,1132,1133,1134,1135,1136 , 1137,1138,1139,1140,1141,1142,1143,1144,1145,114 6,1147,1148,1149,1150,1151,1152,1154,1169,1178,1182,1183,1195);
my_col_id: \u003d t_col_id_tab (1084,1143,1074,1080,1091,1090,1101,1069,1104,1087,1089,1081);

my_col_seq_num: \u003d t_col_seq_num_tab (4,12,2,6,7,8,10,1,9,3,5,11);

Ибо я в 1 .. 12 LOOP
dbms_output.put_line ( 'my_col_id (' | | I | | ') является' | | my_col_id (I));
обновленная s_column_atrb
набор show_hide_ind \u003d 'Y', column_seq_num \u003d my_col_seq_num (I)
где user_id \u003d UPPER (UserID)
и screen_typ_cd \u003d 0
и col_id \u003d my_col_id (I);
END LOOP;
конец;
/
выезд


любой орган может помочь получить это сделали
Спасибо заранее
Pinky
 

Закладки

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

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

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

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




Часовой пояс GMT -4. Текущее время 08:05 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