Работа с низким энергопотреблением без gnome-power-manager

Вы также можете передать массив в качестве ссылки. то есть: ^!d0]

#!/bin/bash

function copyFiles {
   local -n arr=$1

   for i in "${arr[@]}"
   do
      echo "$i"
   done
}

array=("one" "two" "three")

copyFiles array

, но обратите внимание, что любые изменения в arr будут сделаны для массива.

3
задан 2 April 2011 в 10:21

8 ответов

Вероятно, вы уже используете его: acpid. Если материал GNOME или KDE уже установлен, вы найдете кучу обработчиков событий ACPI уже в /etc/acpi/events, а скрипты запускаются в ответ на эти события в самом /etc/acpi; вы можете изменить или заменить эти сценарии своими собственными обработчиками.

К сожалению, в Ubuntu не так много документации о том, какие события доступны, и обработчики, которые я вижу, снабжены acpid и acpi-support, похоже, не содержат ничего, что отслеживает уровень заряда батареи. Поскольку ACPI должен предоставлять события для этого, вам, возможно, придется поэкспериментировать с /usr/share/doc/acpid/examples/default*, чтобы узнать, какие события действительно доставлены, чтобы вы могли писать для них обработчики.

1
ответ дан 25 July 2018 в 22:16
  • 1
    Хм .. нашел пример в & lt; mindspill.net/computing/linux-notes/acpi/… ;. Хотя я не уверен, что понимаю, когда срабатывает событие (ы) battery.*. Также я надеялся на что-то, что бы абстрагировать все мелкие опросы и /proc/**/* биты. – intuited 2 April 2011 в 10:11
  • 2
    Hm, acpid должен делать это за вас; BIOS ACPI отправляет события battery.*, и у вас будет /etc/acpi/events/battery, который выбирает для событий battery.* и запускает скрипт, чтобы действовать на них. Сценарий проверяет имя события, чтобы увидеть, что его вызвало, и если это «низкий заряд батареи», событие должно завершаться или приостанавливаться. – geekosaur 2 April 2011 в 10:17
  • 3
    Ладно, может быть, я просто не читал эту статью достаточно подробно. Я как бы снял ее. – intuited 2 April 2011 в 10:23
  • 4
    Хм .. я имею в виду, что на самом деле нет «низкого заряда батареи». события, вы должны опросить некоторый зависящий от системы ресурс в /proc или /sys, чтобы узнать, почему было создано событие батареи. По крайней мере, это выглядит так ::::: Я просто опустился до 0% емкости аккумулятора (согласно wmbattery). Я установил обработчик события /etc/acpi/events/log-all-events, который отвечает на event=.* с вызовом /usr/bin/logger '%e'. Единственное событие, которое было зарегистрировано, когда я набрал 0%, было battery BAT0 00000080 00000001. Точное же сообщение генерируется при подключении или отключении переменного тока. – intuited 3 April 2011 в 15:15
  • 5
    Я использую термин «опрос». там свободно, потому что на самом деле это не будет проверяться каждую минуту или что-то еще. Но каждый раз, когда будет изменяться статус подключения переменного тока, он должен будет проверять каждый раз, и это необходимо для проверки, периода, когда я надеялся, что он просто получит сообщение от ACPI о том, что батарея разряжена. – intuited 3 April 2011 в 15:16

Вероятно, вы уже используете его: acpid. Если материал GNOME или KDE уже установлен, вы найдете кучу обработчиков событий ACPI уже в /etc/acpi/events, а скрипты запускаются в ответ на эти события в самом /etc/acpi; вы можете изменить или заменить эти сценарии своими собственными обработчиками.

К сожалению, в Ubuntu не так много документации о том, какие события доступны, и обработчики, которые я вижу, снабжены acpid и acpi-support, похоже, не содержат ничего, что отслеживает уровень заряда батареи. Поскольку ACPI должен предоставлять события для этого, вам, возможно, придется поэкспериментировать с /usr/share/doc/acpid/examples/default*, чтобы узнать, какие события действительно доставлены, чтобы вы могли писать для них обработчики.

1
ответ дан 31 July 2018 в 13:47
  • 1
    Хм .. нашел пример в & lt; mindspill.net/computing/linux-notes/acpi/… ;. Хотя я не уверен, что понимаю, когда срабатывает событие (ы) battery.*. Также я надеялся на что-то, что бы абстрагировать все мелкие опросы и /proc/**/* биты. – intuited 2 April 2011 в 10:11
  • 2
    Hm, acpid должен делать это за вас; BIOS ACPI отправляет события battery.*, и у вас будет /etc/acpi/events/battery, который выбирает для событий battery.* и запускает скрипт, чтобы действовать на них. Сценарий проверяет имя события, чтобы увидеть, что его вызвало, и если это «низкий заряд батареи», событие должно завершаться или приостанавливаться. – geekosaur 2 April 2011 в 10:17
  • 3
    Ладно, может быть, я просто не читал эту статью достаточно подробно. Я как бы снял ее. – intuited 2 April 2011 в 10:23
  • 4
    Хм .. я имею в виду, что на самом деле нет «низкого заряда батареи». события, вы должны опросить некоторый зависящий от системы ресурс в /proc или /sys, чтобы узнать, почему было создано событие батареи. По крайней мере, это выглядит так ::::: Я просто опустился до 0% емкости аккумулятора (согласно wmbattery). Я установил обработчик события /etc/acpi/events/log-all-events, который отвечает на event=.* с вызовом /usr/bin/logger '%e'. Единственное событие, которое было зарегистрировано, когда я набрал 0%, было battery BAT0 00000080 00000001. Точное же сообщение генерируется при подключении или отключении переменного тока. – intuited 3 April 2011 в 15:15
  • 5
    Я использую термин «опрос». там свободно, потому что на самом деле это не будет проверяться каждую минуту или что-то еще. Но каждый раз, когда будет изменяться статус подключения переменного тока, он должен будет проверять каждый раз, и это необходимо для проверки, периода, когда я надеялся, что он просто получит сообщение от ACPI о том, что батарея разряжена. – intuited 3 April 2011 в 15:16

Вероятно, вы уже используете его: acpid. Если материал GNOME или KDE уже установлен, вы найдете кучу обработчиков событий ACPI уже в /etc/acpi/events, а скрипты запускаются в ответ на эти события в самом /etc/acpi; вы можете изменить или заменить эти сценарии своими собственными обработчиками.

К сожалению, в Ubuntu не так много документации о том, какие события доступны, и обработчики, которые я вижу, снабжены acpid и acpi-support, похоже, не содержат ничего, что отслеживает уровень заряда батареи. Поскольку ACPI должен предоставлять события для этого, вам, возможно, придется поэкспериментировать с /usr/share/doc/acpid/examples/default*, чтобы узнать, какие события действительно доставлены, чтобы вы могли писать для них обработчики.

1
ответ дан 2 August 2018 в 03:44
  • 1
    Хм .. нашел пример в & lt; mindspill.net/computing/linux-notes/acpi/… ;. Хотя я не уверен, что понимаю, когда срабатывает событие (ы) battery.*. Также я надеялся на что-то, что бы абстрагировать все мелкие опросы и /proc/**/* биты. – intuited 2 April 2011 в 10:11
  • 2
    Hm, acpid должен делать это за вас; BIOS ACPI отправляет события battery.*, и у вас будет /etc/acpi/events/battery, который выбирает для событий battery.* и запускает скрипт, чтобы действовать на них. Сценарий проверяет имя события, чтобы увидеть, что его вызвало, и если это «низкий заряд батареи», событие должно завершаться или приостанавливаться. – geekosaur 2 April 2011 в 10:17
  • 3
    Ладно, может быть, я просто не читал эту статью достаточно подробно. Я как бы снял ее. – intuited 2 April 2011 в 10:23
  • 4
    Хм .. я имею в виду, что на самом деле нет «низкого заряда батареи». события, вы должны опросить некоторый зависящий от системы ресурс в /proc или /sys, чтобы узнать, почему было создано событие батареи. По крайней мере, это выглядит так ::::: Я просто опустился до 0% емкости аккумулятора (согласно wmbattery). Я установил обработчик события /etc/acpi/events/log-all-events, который отвечает на event=.* с вызовом /usr/bin/logger '%e'. Единственное событие, которое было зарегистрировано, когда я набрал 0%, было battery BAT0 00000080 00000001. Точное же сообщение генерируется при подключении или отключении переменного тока. – intuited 3 April 2011 в 15:15
  • 5
    Я использую термин «опрос». там свободно, потому что на самом деле это не будет проверяться каждую минуту или что-то еще. Но каждый раз, когда будет изменяться статус подключения переменного тока, он должен будет проверять каждый раз, и это необходимо для проверки, периода, когда я надеялся, что он просто получит сообщение от ACPI о том, что батарея разряжена. – intuited 3 April 2011 в 15:16

Вероятно, вы уже используете его: acpid. Если материал GNOME или KDE уже установлен, вы найдете кучу обработчиков событий ACPI уже в /etc/acpi/events, а скрипты запускаются в ответ на эти события в самом /etc/acpi; вы можете изменить или заменить эти сценарии своими собственными обработчиками.

К сожалению, в Ubuntu не так много документации о том, какие события доступны, и обработчики, которые я вижу, снабжены acpid и acpi-support, похоже, не содержат ничего, что отслеживает уровень заряда батареи. Поскольку ACPI должен предоставлять события для этого, вам, возможно, придется поэкспериментировать с /usr/share/doc/acpid/examples/default*, чтобы узнать, какие события действительно доставлены, чтобы вы могли писать для них обработчики.

1
ответ дан 4 August 2018 в 19:48
  • 1
    Хм .. нашел пример в & lt; mindspill.net/computing/linux-notes/acpi/… ;. Хотя я не уверен, что понимаю, когда срабатывает событие (ы) battery.*. Также я надеялся на что-то, что бы абстрагировать все мелкие опросы и /proc/**/* биты. – intuited 2 April 2011 в 10:11
  • 2
    Hm, acpid должен делать это за вас; BIOS ACPI отправляет события battery.*, и у вас будет /etc/acpi/events/battery, который выбирает для событий battery.* и запускает скрипт, чтобы действовать на них. Сценарий проверяет имя события, чтобы увидеть, что его вызвало, и если это «низкий заряд батареи», событие должно завершаться или приостанавливаться. – geekosaur 2 April 2011 в 10:17
  • 3
    Ладно, может быть, я просто не читал эту статью достаточно подробно. Я как бы снял ее. – intuited 2 April 2011 в 10:23
  • 4
    Хм .. я имею в виду, что на самом деле нет «низкого заряда батареи». события, вы должны опросить некоторый зависящий от системы ресурс в /proc или /sys, чтобы узнать, почему было создано событие батареи. По крайней мере, это выглядит так ::::: Я просто опустился до 0% емкости аккумулятора (согласно wmbattery). Я установил обработчик события /etc/acpi/events/log-all-events, который отвечает на event=.* с вызовом /usr/bin/logger '%e'. Единственное событие, которое было зарегистрировано, когда я набрал 0%, было battery BAT0 00000080 00000001. Точное же сообщение генерируется при подключении или отключении переменного тока. – intuited 3 April 2011 в 15:15
  • 5
    Я использую термин «опрос». там свободно, потому что на самом деле это не будет проверяться каждую минуту или что-то еще. Но каждый раз, когда будет изменяться статус подключения переменного тока, он должен будет проверять каждый раз, и это необходимо для проверки, периода, когда я надеялся, что он просто получит сообщение от ACPI о том, что батарея разряжена. – intuited 3 April 2011 в 15:16

Вероятно, вы уже используете его: acpid . Если материал GNOME или KDE уже установлен, вы найдете кучу обработчиков событий ACPI уже в / etc / acpi / events , а сценарии запускаются в ответ на эти события в / etc / acpi ; вы можете изменить или заменить эти сценарии своими собственными обработчиками.

К сожалению, в Ubuntu не содержится много документации о том, какие события доступны, и обработчики, которые я вижу, снабжены acpid и acpi-support , похоже, не содержат ничего, что отслеживает уровень заряда батареи. Поскольку ACPI должен предоставлять события для этого, вам, возможно, придется поэкспериментировать с / usr / share / doc / acpid / examples / default * , чтобы увидеть, какие события действительно доставлены, чтобы вы могли писать для них обработчики.

1
ответ дан 6 August 2018 в 03:52

Вероятно, вы уже используете его: acpid . Если материал GNOME или KDE уже установлен, вы найдете кучу обработчиков событий ACPI уже в / etc / acpi / events , а сценарии запускаются в ответ на эти события в / etc / acpi ; вы можете изменить или заменить эти сценарии своими собственными обработчиками.

К сожалению, в Ubuntu не содержится много документации о том, какие события доступны, и обработчики, которые я вижу, снабжены acpid и acpi-support , похоже, не содержат ничего, что отслеживает уровень заряда батареи. Поскольку ACPI должен предоставлять события для этого, вам, возможно, придется поэкспериментировать с / usr / share / doc / acpid / examples / default * , чтобы увидеть, какие события действительно доставлены, чтобы вы могли писать для них обработчики.

1
ответ дан 7 August 2018 в 21:48

Вероятно, вы уже используете его: acpid . Если материал GNOME или KDE уже установлен, вы найдете кучу обработчиков событий ACPI уже в / etc / acpi / events , а сценарии запускаются в ответ на эти события в / etc / acpi ; вы можете изменить или заменить эти сценарии своими собственными обработчиками.

К сожалению, в Ubuntu не содержится много документации о том, какие события доступны, и обработчики, которые я вижу, снабжены acpid и acpi-support , похоже, не содержат ничего, что отслеживает уровень заряда батареи. Поскольку ACPI должен предоставлять события для этого, вам, возможно, придется поэкспериментировать с / usr / share / doc / acpid / examples / default * , чтобы увидеть, какие события действительно доставлены, чтобы вы могли писать для них обработчики.

1
ответ дан 10 August 2018 в 10:02

Вероятно, вы уже используете его: acpid . Если материал GNOME или KDE уже установлен, вы найдете кучу обработчиков событий ACPI уже в / etc / acpi / events , а сценарии запускаются в ответ на эти события в / etc / acpi ; вы можете изменить или заменить эти сценарии своими собственными обработчиками.

К сожалению, в Ubuntu не содержится много документации о том, какие события доступны, и обработчики, которые я вижу, снабжены acpid и acpi-support , похоже, не содержат ничего, что отслеживает уровень заряда батареи. Поскольку ACPI должен предоставлять события для этого, вам, возможно, придется поэкспериментировать с / usr / share / doc / acpid / examples / default * , чтобы увидеть, какие события действительно доставлены, чтобы вы могли писать для них обработчики.

1
ответ дан 13 August 2018 в 16:22
  • 1
    Хм .. нашел пример в & lt; mindspill.net/computing/linux-notes/acpi/… ;. Хотя я не уверен, что понимаю, когда батарея события (ов) . * срабатывает. Также я надеялся на то, что абстрагирует все мелкие опросы и бит / proc / ** / * . – intuited 2 April 2011 в 10:11
  • 2
    Hm, acpid должен делать это за вас; ACPI BIOS отправляет батареи . * , и у вас будет / etc / acpi / events / battery , который выбирает батарею . * события и запускает скрипт, чтобы действовать на них. Сценарий проверяет имя события, чтобы увидеть, что его вызвало, и если это «низкий заряд батареи», событие должно завершаться или приостанавливаться. – geekosaur 2 April 2011 в 10:17
  • 3
    Ладно, может быть, я просто не читал эту статью достаточно подробно. Я как бы снял ее. – intuited 2 April 2011 в 10:23
  • 4
    Хм .. я имею в виду, что на самом деле нет «низкого заряда батареи». event, вы должны опросить некоторый зависящий от системы ресурс в / proc или / sys , чтобы узнать, почему было создано событие батареи. По крайней мере, это выглядит так ::::: Я просто упал до 0% емкости аккумулятора (согласно wmbattery ). Я установил обработчик событий / etc / acpi / events / log-all-events , который отвечает на event =. * с вызовом / usr / bin / logger '% e' . Единственное событие, которое было зарегистрировано, когда я набрал 0% емкости, было батарея BAT0 00000080 00000001 . Точное же сообщение генерируется при подключении или отключении переменного тока. – intuited 3 April 2011 в 15:15
  • 5
    Я использую термин «опрос». там свободно, потому что на самом деле это не будет проверяться каждую минуту или что-то еще. Но каждый раз, когда будет изменяться статус подключения переменного тока, он должен будет проверять каждый раз, и это необходимо для проверки, периода, когда я надеялся, что он просто получит сообщение от ACPI о том, что батарея разряжена. – intuited 3 April 2011 в 15:16

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

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