Я хочу записать функцию удара, чтобы и начать загрузить файл и открывать его в видеоплеере; я не знаю, как получить путь файла, загружаемого хотя:
function dl-and-stream() {
aria2c "$1" &
sleep 30
mpv #What to put here
}
PS: Это не мой единственный вариант использования, и я знаю --out
, но мне нравится сохранять исходное имя файла.
Обновление: Мои варианты использования могут быть выполнены через --on-download-complete
(и другие обработчики событий), но я все еще предпочитаю не использовать это, если это возможно. (Поскольку им нужно создание дополнительных файлов сценария.)
aria2c
обеспечивает --on-download-start
опция, которая позволяет Вам выполнить команду как только запущенная загрузка. Для использования его, чтобы начать играть файл запишите сценарий с
#!/bin/sh
mpv "$3"
и выполненный aria2c
как этот в Вашей функции:
aria2c --on-download-start /path/to/script "$1"
Это имеет дополнительное преимущество, что Вы не должны sleep
для фиксированного количества времени, которое не может быть достаточно в некоторых случаях. На самом деле Вам не нужна функция вообще с этим решением, простым alias
делает это:
alias dl-and-stream='aria2c --on-download-start /path/to/script'