Просмотрите заголовок песни на терминале

| (“канал”) символ означает передавать вывод команды слева к команде справа. Команда find . -maxdepth 1 перечисляет файлы в текущем каталоге (плюс . самостоятельно). Команда grep 'ChownFileNames*' -exec chown hadoop:hadoop -- {} . \; не имеет никакого смысла: Вы являетесь передающими find опции к grep команда.

find самостоятельно имеет способ соответствовать именам файлов, -name предикат. Это берет подстановочный шаблон оболочки в качестве аргумента.

Вы могли использовать grep для фильтрации списка но необходимо было бы предоставить допустимую командную строку grep. Сохранить только имена файлов, соответствующие шаблону оболочки ChownFileNames*, необходимо было бы использовать регулярное выражение /ChownFileNames[^/]$. Затем необходимо было бы проанализировать вывод grep преобразовать список соответствия именам в параметры командной строки. Предположение, что Вы запускаете Linux и имена файлов, не содержит новых строк, Вы могли использовать xargs:

find . -maxdepth 1 |
grep '/ChownFileNames[^/]*$' |
xargs -d '\n' chown hadoop:hadoop

Это намного более просто и более устойчиво для использования find -exec действие. Обратите внимание, что можно использовать -exec … {} + выполнять команду для пакета файлов сразу вместо однажды на файл. Можно также сделать find перечислите текущий каталог.

find . maxdepth 1 \( -name . -o -name 'ChownFileNames*' \) -exec chown hadoop:hadoop {} +

В выполнении обычно нет никакого смысла find когда Вы только соответствуете файлам по имени (и не, например, по дате) в текущем каталоге (не пересекая подкаталоги). Если нет столько файлов в текущем каталоге, что это делает командную строку слишком долго, просто используйте

chown hadoop:hadoop . ChownFileNames*
3
23.06.2013, 15:52
2 ответа

При выполнении VLC использование, это - средство с дистанционным управлением vlc -I rc можно взаимодействовать с выполнением vlc сессия. Существует хорошее учебное руководство на нем здесь, названо:

Управление VLC через RC (“Дистанционное управление”) интерфейсное использование сокета домена UNIX (и никакое программирование).

Вкратце Вы запускаетесь vlc как так:

$ vlc -I rc /home/saml/Desktop/desktop/mp3/stevesongs/marvelous_day/fast_monkey.mp3
VLC media player 1.1.12 The Luggage (revision exported)
Blocked: call to unsetenv("DBUS_ACTIVATION_ADDRESS")
Blocked: call to unsetenv("DBUS_ACTIVATION_BUS_TYPE")
[0x700650] [rc] lua interface: Listening on host "*console".
VLC media player 1.1.12 The Luggage
Remote control interface initialized. Type `help' for help.
> 

Примечание: Можно также выполнить его с помощью плей-листа, я просто показываю единственный MP3 для этого примера.

Теперь Вы при подсказке vlc, где можно взаимодействовать с vlc и узнать вещи, такие как информация о плей-листе и что в настоящее время играет:

состояние
> status
( new input: file:///home/saml/Desktop/desktop/mp3/stevesongs/marvelous_day/fast_monkey.mp3 )
( audio volume: 256 )
( state playing )
> 
плей-лист
> playlist
+----[ Playlist - Undefined ]
| 2 - Playlist
|   4 - Fast Monkey (00:03:34) [played 1 time]
| 3 - Media Library
+----[ End of playlist ]
> 

Поддельный TTY

Если Вы не хотите должными быть взаимодействовать с vlc подсказка можно добраться vlc работать с поддельным устройством TTY так, чтобы можно было взаимодействовать с ним через сокет.

       ss of dialog #1

       ss of dialog #2

Примечание: Снимки экрана от ноутбука OSX. При выполнении этого на Linux, необходимо будет выполнить шаги на videolan веб-сайте для включения RC & Fake TTY. Шаги обрисованы в общих чертах на этом руководстве, названном: Как использовать VLC для записи в Linux.

Подскажите, что диалоговое окно выше находится под выпадающим в основном окне VLC, Инструментах-> Предпочтения, на Linux.

Однажды vlc установка с поддельным TTY, можно направить команды к нему через cli через netcat (nc):

$ echo -n "pause"    | nc -U /Users/vlc.sock
$ echo -n "playlist" | nc -U /Users/vlc.sock
3
27.01.2020, 21:23

Команда

ffprobe "http://stream.srg-ssr.ch/m/rsj/aacp_96"

сообщает вам, что сейчас играет на Radio Swiss Jazz. Ищите «StreamTitle» в его выводе.

-1
27.01.2020, 21:23

Теги

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