Advertisement
Guest User

mocp onsongchange script

a guest
May 27th, 2012
146
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.68 KB | None | 0 0
  1. #!/bin/bash
  2. # Получаем список процессов,
  3. # где фигурирует имя нашего скрипта
  4. p_list=`pgrep -f "$0" | grep -v $$`
  5. # Если таких процессов ббольше одного
  6. if [[ `echo $p_list | wc -w` > 1 ]]
  7. then # тогда
  8.     # Проходим циклом по PID ранее
  9.     # полученных процессов
  10.     for i in $p_list
  11.     do
  12.     # И убиваем их
  13.     kill -9 $i;
  14.     done
  15. fi
  16. # Пауза в 2 секунды
  17. sleep 2s;
  18. # Нормализуем полученные имя исполнителя и трека
  19. artist=""
  20. # Если переменные не пусты
  21. if [[ -n "$1" && -n "$2" ]]
  22. then # Тогда
  23.     # Добавляем дефис между исполнителем и треком
  24.     artist="$1 - $2"
  25. # Если имя исполнителя и трека пустые
  26. elif [[ -z "$1" && -z "$2" ]]
  27. then # Тогда
  28.     # Получаем из пути к файлу его имя
  29.     tmp=$(basename "`mocp --format %file`")
  30.     # И сохраняем в переменную artist без расширения файла
  31.     artist=${tmp%.*}
  32. else # Иначе просто выводим как есть
  33.     artist="$1 $2"
  34. fi
  35. # Нормализуем имя альбома
  36. album="";
  37. # Если переменная не пуста
  38. if [[ -n "$3" ]]
  39. then # Тогда
  40.     # Вписываем её в скобках
  41.     album="($3)";
  42. fi
  43. # Через notify-send информаируем информацией о треке
  44. notify-send -t 2000 -i audio-speakers "$artist $album";
  45. # Успешно завершаем работу скрипта
  46. exit 0;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement