Нужна помощь в интерпретации строки скрипта bash

Вот эта строка:
&& /etc/acpi/local/lid.sh.pre
Команды никакой нет, есть только префикс. Какие действия происходят в этом выражении?

И вот сам скрипт ( /etc/acpi/lid.sh):
#!/bin/bash
# TODO: Change the above to /bin/sh

test -f /usr/share/acpi-support/state-funcs || exit 0

. /usr/share/acpi-support/power-funcs
. /usr/share/acpi-support/policy-funcs
. /etc/default/acpi-support

&& /etc/acpi/local/lid.sh.pre

if ; then exit; fi

grep -q closed /proc/acpi/button/lid/*/state
if
then
for x in /tmp/.X11-unix/*; do
displaynum=`echo $x | sed s#/tmp/.X11-unix/X##`
getXuser;
if ; then
export DISPLAY=“:$displaynum”
. /usr/share/acpi-support/screenblank
fi
done
else
for x in /tmp/.X11-unix/*; do
displaynum=`echo $x | sed s#/tmp/.X11-unix/X##`
getXuser;
if ; then
export DISPLAY=“:$displaynum”
grep -q off-line /proc/acpi/ac_adapter/*/state
if
then
if pidof xscreensaver > /dev/null; then
su $user -c “xscreensaver-command -unthrottle”
fi
fi
if ; then
&& radeontool light on
fi
if ; then
su $user -c “xscreensaver-command -deactivate”
fi
su $user -c “xset dpms force on”
fi
done
fi
&& /etc/acpi/local/lid.sh.post
yura_n
Вот эта строка:
&& /etc/acpi/local/lid.sh.pre
Команды никакой нет, есть только префикс. Какие действия происходят в этом выражении?
Если существует файл /etc/acpi/local/lid.sh.pre и он исполняемый, то он запускается ;)
Тут целых две команды:
Первая команда test , [ это её сокращённая запись. Команда проверяет условия. Ключ -x означает проверку на исполняемость файла.
Вторая команда – собственно запуск скрипта.
Между ними && означает, что вторая команда выполнится, только если первая завершится успешно (то есть с кодом 0).
Результат – см. предыдущий пост :)
Спасибо!
 
Зарегистрироваться или войдите чтобы оставить сообщение.