LINUX.ORG.RU

скрипт BASH: почему скобки разного цвета ?

 , ,


0

1

Добрый день! Пишу простенькие скрипты для обработки mp3 файлов. Создаю файлик coder:

#!/bin/bash

#выделяем только имя, отсекаем расширение
name_name=${name_basename%.*}
-почему скобка { синяя, а скобка } коричневая ?

#удаляем пробелы в именах файлов
find . -type f -iname «*.mp3» | grep ' ' | sort | while read -r f; do mv «$f» ${f// /_}; done
-почему скобка { синяя, а скобка } коричневая ?

#ищем аудио файлы
find «$source_folder» -type f \( -iname «*.flac» -or -iname «*.ape» -or -iname «*.wav» \) | sort | while read MUSICFILE do xxxxx done
-аналогично, почему \( синее, а \) коричневое ?


имя текстового редактора и скриншот бы.
вангую неверный выбор языка в подсветске синтаксиса

bl ★★★ ()

Ну хоть редактор подскажи?
А так,
а) кривая подсветка синтаксиса в редакторе, или
б) когда на одной из скобок находится курсор, редактор для удобства подсвечивает противоположную скобку.

blexey ★★★★ ()
Ответ на: комментарий от bre

не пойму как тут картинки вставлять. вобщем, правым щелчком мыши создаем файлик, в свойствах делаем его запускаемым. редактируем простым gedit'ом

#!/bin/bash

declare to_do;

echo «What to do?:»;
echo «1 - split (flac, ape, wav, NOT WV !!!)»;
echo «2 - join (flac to flac)»;
echo «3 - convert (mp3, flac, ogg, ape, wv, wav)»;
echo "";
read to_do;

case $to_do in

«1»)

find . -type f -iname «*.mp3» | grep ' ' | sort | while read -r f;
do
mv «$f» ${f// /_};
done

find . -type f \( -iname «*.flac» -or -iname «*.ape» -or -iname «*.wav» \) | sort | while read MUSICFILE
do
name_dir=$(dirname «$MUSICFILE»)
name_basename=$(basename «$MUSICFILE»)
name_name=${name_basename%.*}
done
;;
esac

bre ()
Ответ на: комментарий от bre

не пойму как тут картинки вставлять

Очень просто: загружаете её на хостинг размещения изображений, например http://postimage.org/, получаете в ответ ссылку, ссылку помещаете в сообщении здесь.

правым щелчком мыши создаем файлик,

Просто файлик открывается без подсветки синтаксиса, какое окончание у имени файлика, а лучше покажите скриншотик.

kostik87 ★★★★★ ()

1. gedit говно. (не может парсить bash по-нормальному)

2. юзай уже разметку форума для кода

3. судя по названию топика, тегам и убунте на скрине - у тебя явное непонимание происходящего. Баш к плохой подсветки синтаксиса говноредактора не имеет никакого отношения

Deleted ()
Последнее исправление: Deleted (всего исправлений: 2)

1. Используй тег [code] для выделения кода

2. Gedit — простой текстовый редактор, если тебе нужна подсветка синтаксиса, лучше IDE используй — geany, например.

Eddy_Em ☆☆☆☆☆ ()
Ответ на: комментарий от bre

Собственно, уже ответили - это проблема разбора синтаксиса gedit`ом.

Ну и точку с запятой ставить не нужно, в случае, если каждая командная конструкция на отдельной строке.

kostik87 ★★★★★ ()
Ответ на: комментарий от kostik87

не вопрос, sudo apt-get install geany.
http://postimg.org/image/lfure00j5/
В geany всё выглядет нормально. Странный этот gedit походу.
А в чем у меня непонимаение? Всегда делал скриптики в файл через gedit, потом кидал файлик в папку с музыкой и пошла обработочка...
Всем спасибо за отклики!

bre ()

Относительно кода. Ты сейчас свелосипедил select.

Объявлять переменные не обязательно, за исключением некоторых случаев. Впрочем, не исключаю, что ты просто хотел удобочитаемости.

Bagrov ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.