Каталог Tar по умолчанию

Я нашел решение благодаря в этом обсуждении и paswitch . Таким образом, acpid можно использовать для перехвата событий подключения / отключения наушников.

Я создал следующие файлы:

/ etc / acpi / events / headphone-jack:

event=jack/headphone
action=/etc/acpi/headphone-jack.sh %e

/etc/acpi/headphone-jack.sh (не забудьте сделать его исполняемым):

#!/bin/bash
set -e -u

if [ "$1" = "jack/headphone" -a "$2" = "HEADPHONE" ]; then
    case "$3" in
        plug)
            sink=alsa_output.pci-0000_00_1b.0.analog-stereo
            ;;
        *)
            sink=alsa_output.pci-0000_01_00.1.hdmi-stereo
            ;;
    esac
    for userdir in /run/user/*; do
        uid="$(basename $userdir)"
        user="$(id -un $uid)"
        if [ -f "$userdir/pulse/pid" ]; then
            PULSE_RUNTIME_PATH="$userdir/pulse" su "$user" -c "paswitch $sink"
        fi
    done
fi

Снижается естественно необходимо обновить в зависимости от вашей системы.

Я не уверен, насколько надежен этот сценарий для реальной многопользовательской системы, но у меня он работает.

1
02.06.2017, 01:47
2 ответа

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

tar -t -f archive.tar

Пути, хранящиеся в архиве, являются почти всегда относительными путями (если только -P не использовался при создании архива ), что означает, что содержимое архива будет распаковано в виде файловой иерархии в текущем каталоге (если не было изменено с помощью -C).

1
27.01.2020, 23:34

Команда tar извлекает файлы в свой текущий рабочий каталог. Когда вы запускаете tar из оболочки, это текущий рабочий каталог оболочки, который задается командой cd и отображается командой pwd, и иногда отображается в подсказке. Каталог извлечения можно изменить с помощью опции -C.

Многие tar-файлы содержат все файлы в одном каталоге верхнего уровня (относительно каталога извлечения), обычно с именем, напоминающим tar-файл. В этом случае все извлеченные файлы находятся в этом каталоге. Но это не обязательно, существует множество tar-файлов, содержащих несколько каталогов верхнего уровня и файлов верхнего уровня. С другой стороны, tar в Ubuntu и в большинстве других систем не будет извлекать файлы за пределы каталога извлечения.

Каталог извлечения вообще не зависит от расположения tar-файла.(Это относится к команде tar и, как правило, к большинству программ для работы с архивами из командной строки. Программы с графическим интерфейсом могут вести себя по-разному.) Каталог извлечения — это расположение tar-файла, если аргумент имени tar-файла передается в tar не содержит какой-либо части каталога, но в целом он может быть где угодно.

Если вы не помните, в каком каталоге находился текущий каталог, когда запускали команду tar, проверьте историю оболочки (в bash нажмите Ctrl+R. ] затем введите tar; снова нажмите Ctrl+R, чтобы повторить поиск). Если вы найдете относительный путь к архиву (например, tar xf subdir/archive.tar), вы сможете определить текущий каталог (в этом примере это был родительский каталог содержащий архив). Конечно, это не всегда поможет, например, если путь абсолютный.

Если вы не можете найти файлы, вы можете попытаться найти файлы, которые были созданы или изменены (точнее, любые изменения, внесенные в файл или его свойства) в нужном временном диапазоне, с помощью команды найти и его -ctime или -cmin, например

find ~ -cmin +30 -cmin -61

для поиска файлов, которые были изменены от 30 до 60 минут назад в вашем домашнем каталоге. Вместо -cmin и -ctime вы можете использовать -cnewer somefile, чтобы сравнить время изменения со временем изменения файла somefile.Вы можете добавить -name foo в конце команды find, чтобы сузить список до определенного имени файла, содержащегося в архиве (без какой-либо части каталога).

Если вы запускали tar накануне или ранее, база данных locate может сообщить вам, где находится ваш файл. Например, если в архиве есть файл some/directory/myfile.txt, то locate some/directory/myfile.txt подскажет, где можно найти такой файл.

0
27.01.2020, 23:34

Теги

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