Управление музыкой от облачного до малого mp3-плеера через ubuntu

Вы не можете написать учебник для создания одного скрипта. Это будет похоже на общий учебник по python, который вы можете найти во многих местах в Интернете.

То, что я сделал, это написать небольшой скрипт с комментариями, чтобы объяснить, что я сделал, чтобы проверить заряд батареи каждый 10 секунд. Это может быть преувеличено. Измените линию time.sleep(10), чтобы установить интервал (в секундах). Конечно, команды могут быть изменены, я отправил уведомление как есть.

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

Как использовать

Сценарий предназначен для запуска в фон; скопируйте его в пустой файл, сохраните его как check_battery.py, сделайте его исполняемым и запустите его при входе в систему: Dash> Startup Applications> Add, добавьте команду:

/path/to/check_battery.py

Как использовать

#!/usr/bin/env python3

import subprocess
import time

def read_status():
    """
    This function reads the output of your command, finds the line with
    'percentage' (line 17, where first line = 0) and reads the figure
    """
    command = "upower -i $(upower -e | grep BAT) | grep --color=never -E percentage|xargs|cut -d' ' -f2|sed s/%//"
    get_batterydata = subprocess.Popen(["/bin/bash", "-c", command], stdout=subprocess.PIPE)
    return get_batterydata.communicate()[0].decode("utf-8").replace("\n", "")

def take_action():
    """
    When the charge is over 60% or below 40%, I assume the action does
    not have to be repeated every 10 seconds. As it is, it only runs
    1 time if charge exceeds the values. Then only if it exceeds the
    limit again.
    """
    # the two commands to run if charged over 80% or below 60%
    command_above = "notify-send 'charged over 80'%"
    command_below = "notify-send 'charged below 80%'"
    times = 0
    while True:
        charge = int(read_status())
        if charge > 60:
            if times == 0:
                subprocess.Popen(["/bin/bash", "-c", command_above])
                times = 1
        elif charge < 40:
            if times == 0:
                subprocess.Popen(["/bin/bash", "-c", command_below])
                times = 1
        else:
            times = 0
        time.sleep(10)

take_action()
-1
задан 22 January 2018 в 23:14

3 ответа

Я нашел решение для реализации части 1 здесь. Хитрость заключается в том, чтобы хранить большие файлы на внешнем диске, синхронизировать с Dropbox через simlink, а затем выполнять выборочную синхронизацию, чтобы исключить этот каталог, сохраняя содержимое только в облаке.

Я до сих пор не знаю, как проиндексировать содержимое в HD. [Drop1-Pro предлагает здесь , чтобы выполнить это, но до сих пор нет дистрибутива linux :(].

Одна идея состоит в том, чтобы включить каталог в выборочную синхронизацию, но затем исключить все его подпункты -directories.Таким образом, использование dropbox exclude из консоли Linux должно содержать список всех исключенных подкаталогов. Не точно индекс, но довольно близко к музыке, организованной художником.

В качестве плюса, dropbox exclude remove <subdir> будет синхронизировать один такой подкаталог для сохранения в mp3-плеер через ноутбук. Затем dropbox exclude add <subdir> возвращается.

0
ответ дан 22 May 2018 в 15:26

Я нашел решение для реализации части 1 здесь. Хитрость заключается в том, чтобы хранить большие файлы на внешнем диске, синхронизировать с Dropbox через simlink, а затем выполнять выборочную синхронизацию, чтобы исключить этот каталог, сохраняя содержимое только в облаке.

Я до сих пор не знаю, как проиндексировать содержимое в HD. [Drop1-Pro предлагает здесь , чтобы выполнить это, но до сих пор нет дистрибутива linux :(].

Одна идея состоит в том, чтобы включить каталог в выборочную синхронизацию, но затем исключить все его подпункты -directories.Таким образом, использование dropbox exclude из консоли Linux должно содержать список всех исключенных подкаталогов. Не точно индекс, но довольно близко к музыке, организованной художником.

В качестве плюса, dropbox exclude remove <subdir> будет синхронизировать один такой подкаталог для сохранения в mp3-плеер через ноутбук. Затем dropbox exclude add <subdir> возвращается.

0
ответ дан 17 July 2018 в 22:39

Я нашел решение для реализации части 1 здесь. Хитрость заключается в том, чтобы хранить большие файлы на внешнем диске, синхронизировать с Dropbox через simlink, а затем выполнять выборочную синхронизацию, чтобы исключить этот каталог, сохраняя содержимое только в облаке.

Я до сих пор не знаю, как проиндексировать содержимое в HD. [Drop1-Pro предлагает здесь , чтобы выполнить это, но до сих пор нет дистрибутива linux :(].

Одна идея состоит в том, чтобы включить каталог в выборочную синхронизацию, но затем исключить все его подпункты -directories.Таким образом, использование dropbox exclude из консоли Linux должно содержать список всех исключенных подкаталогов. Не точно индекс, но довольно близко к музыке, организованной художником.

В качестве плюса, dropbox exclude remove <subdir> будет синхронизировать один такой подкаталог для сохранения в mp3-плеер через ноутбук. Затем dropbox exclude add <subdir> возвращается.

0
ответ дан 24 July 2018 в 13:16

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

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