GTK-ПРЕДУПРЕЖДЕНИЕ ** Запрещение, названное с неосуществленным окном

При установке сценария для выполнения слайд-шоу в Bash я столкнулся с раздражающей проблемой. Слайд-шоу будет работать очень хорошо, но промежуточные изображения (или фильмы) он отобразит рабочий стол, и экран покажет предупреждение выше. Я не уверен, как зафиксировать его; или почему это продолжается вообще действительно.

Сценарий, который я использую для проигрывания слайд-шоу, является довольно прямым:

while true
do
for f in $FILES
do
filename=$(basename "$f")
extension="${filename##*.})"

 #shopt -s nocasematch

 if [ $extension == "mp4" ] || [ $extension == "mov" ]
mplayer $filename -fs

elif [ $extension == "jpg" ] 
timeout 5 /usr/bin/eog --fullscreen $filename

fi

done
done

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

0
задан 13 July 2015 в 15:56

1 ответ

Я верю, Ваш сценарий не может работа. Исправьте ошибки ниже:

   1  while true
   2  do
   3  for f in $FILES
      ^––SC1009 The mentioned parser error was in this for loop.
   4  do
   5  filename=$(basename "$f")
   6  extension="${filename##*.})"
   7  
   8   #shopt -s nocasematch
   9  
  10   if [ $extension == "mp4" ] || [ $extension == "mov" ]
       ^––SC1049 Did you forget the 'then' for this 'if'?
       ^––SC1073 Couldn't parse this if expression.
  11  mplayer $filename -fs
  12  
  13  elif [ $extension == "jpg" ] 
      ^––SC1050 Expected 'then'.
           ^––SC1072 Expected "#". Fix any mentioned problems and try again.
  14  timeout 5 /usr/bin/eog --fullscreen $filename
  15  
  16  fi
  17  
  18  done
  19  done
<час>

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

, Например:

while true; do
  for f in $FILES; do
    filename=$(basename "$f")
    extension="${filename##*.}"
    if [ "$extension" == "mp4" ] || [ "$extension" == "mov" ]; then
      mplayer "$filename" -fs
    elif [ "$extension" == "jpg" ]; then
      timeout 5 /usr/bin/eog --fullscreen "$filename"
    fi
  done
done
<час>

Дополнительная подсказка для будущего:

Имеют Ваши сценарии, проверенные здесь .
0
ответ дан 4 October 2019 в 00:38

Другие вопросы по тегам:

Похожие вопросы: