The UNIX and Linux Forums  


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



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

Подробнее UNIX и Linux Темы форума можно найти полезные
Нить Резьба для начинающих Форум Ответы Последнее сообщение
TFTP неисправностей Bobby76 UNIX для чайников Вопросы И Ответы 0 02-29-2008 09:44 AM
чтение из файла и передать в качестве переменных и игнорировать # в файл konark Shell программирование и сценарии 4 11-08-2007 03:55 AM
Чтение и запись файла с именем файла на Парама файл. thebeginer UNIX перспективных И опытных пользователей 1 10-05-2007 05:38 PM
Чтение имен файлов из файла и исполнители относительной файл из скрипта оболочки anushilrai Shell программирование и сценарии 4 03-10-2006 05:25 AM
Чтение конкретным содержанием из файла и добавить его в другой файл dnicky Shell программирование и сценарии 5 10-04-2005 06:45 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-03-2006
Индалесио Indalecio is offline
Зарегистрированный пользователь
  
 

Регистрация: Sep 2006
Место проведения: Швеция
Сообщений: 59
Устранение неполадок: чтение файла столкновения?

Привет всем
Я пытаюсь понять, в полной мере вопрос, я вчера и был просто надеясь, что нужно дать мне ваше мнение о нем. Я полагаю, что я установил проблемы, но я все еще чувствую неведении о некоторых частях поведение я мог опыт в следующих сценариев. Вот была ситуация (старый код упрощенная версия):

Код:
for FILE in $INPUT_DIR ; do
   grep -q $FILE $PROCESSED 2>&1
   if [ $? != 0 ] ; then
      echo $FILE >> $PROCESSED
   else
      continue
   fi
   SOURCE=`grep ^S $FILE | wc -l | awk '{print $1}'`
   END_RCD=`grep ^E $FILE | wc -l | awk '{print $1}'`
   if [ $SOURCE -ne $END_RCD ] ; then
      echo "Error in $FILE: "$SOURCE" source keys detected, but "$END_RCD" end keys detected.
   fi
done
Содержание этого INPUT_DIR содержится много файлов, и она сообщила об выше ошибку на одной из них (SOURCE \u003d 1, END_RCD \u003d 0). Однако дело было ОК, насколько я мог видеть. Я быстро обеспечили моей команды были правильными, и даже вновь запускали скрипт на весь список файлов, чтобы получить окончательное ОК как производства, так что это посмотрел странно на первый взгляд.

Через некоторое время я, наконец, расследование установило, что у меня была куча N процессов работает в фоновом режиме, что призыв кода. Несмотря на это я первоначально предполагалось этого сценария будет выполняться только один раз в то же время, так что файлы, обработанные с моего процесса (N), входящих в INPUT_DIR будет обновление ОБРАБОТАННЫЕ файла, чтобы они не взяли на следующий призыв.

К сожалению, для моей теории, истина заключается в том, что сценарий получил призвали несколько раз в то же время (из разных сессий), в параллельной обработке, это с ОБРАБОТАННЫЕ файл, который был не только (вы начинаете видеть то, что она может выглядеть здесь ). Так кратко, вышеуказанные сценария сообщили об ошибке, при запуске на процессе (N) для файлов, созданных в процессе (N-1).

Теперь выше положение должно быть нормально, если файл открыт один раз в момент, то это просто, что этот файл получает проверяются неправильный процесс, но результат остается тем же. Так что я считаю, заключается в том, что файл, на котором он сообщил об ошибке была открыта в двух сессий одновременно.

Я удалил файл ОБРАБОТАННЫЕ и сейчас запустить этот скрипт один раз после того, как все процессы завершены и поэтому я не получают какого-либо вопроса больше. Единственное, что я до сих пор не понимаю, почему это END_RCD дал 0. После двух сессий имеют различные переменные буферы, я не вижу, как потенциального столкновения на файл будет производить такую ошибку. Если кто-нибудь здесь есть доверие объяснение, я был бы очень рад узнать о нем.

Большое спасибо,
Yann
Closed Thread

Закладки

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

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

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

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




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