Проблема, из-за которой я не слышал звука, заключалась в том, что pulseaudio
не работал в фоновом режиме. Причина, по которой я этого не знал, потому что pulseaudio
должен был запускаться автоматически при запуске, но этого не произошло.
После того, как я запустил pulseaudo
с помощью pulseaudio --start
, я начал слышать звук. Теперь мне нужно добавить pulseaudio
в список автозагрузки, чтобы получать звук при каждом запуске компьютера.
Также мне не удалось воспроизвести песню из учетной записи root
, но из некорневой учетной записи я мог.
Вы не можете подключиться к xargs
здесь и присоединиться к поиску, find
может выполнять такие команды, как grep
, самостоятельно.
Первичный-exec
запускает команду для файла или файлов. Это удается, и обработка операндов справа продолжается только тогда, когда сама команда завершается с успешным результатом, поэтому
find. -type f -name Client.php -exec grep -q WARNING {} \; -exec echo {} \;
будет распечатывать путь к каждому файлу с именем "Client.php", который содержит "ПРЕДУПРЕЖДЕНИЕ" внутри него. Вы можете изменить эту вторую -exec... \;
на -delete
, чтобы удалить ее, или изменить команду, чтобы использовать rm
или mv
для работы с ними.
Точки с запятой гарантируют, что за раз проверяется только один файл, и что мы получаем это верно -при -успешном поведении:
If the primary expression is punctuated by a <semicolon>, the utility utility_name shall be invoked once for each pathname and the primary shall evaluate as true if the utility returns a zero value as exit status.
Весь -exec... \;
представляет собой один фрагмент, поэтому, если вы используете -delete
, вам нужно удалить точку с запятой вместе с -exec
и командой.
Я предлагаю сначала выполнить приведенную выше команду и убедиться, что она действительно включает только те файлы, которые вам нужны, прежде чем вы действительно удалите их. Однако полное удаление -без запроса команды -будет
find. -type f -name Client.php -exec grep -q WARNING {} \; -delete
Будьте осторожны!
Вы можете написать сценарий:
#!/bin/bash
FINDFILE=Client.php
if [[ $(find. -type f -name $FINDFILE | xargs grep "WARNING") ]] ; then
rm -i $FINDFILE
else
echo "File with warning not found."
fi
Поместите скрипт в папку /usr/local/bin, chmod +x /usr/local/bin/имя_сценария.
Теперь вы можете выполнить его из любого места в любое время.(Также лучше не использовать расширение.sh)