Я пытаюсь создать скрипт для запуска vlc для воспроизведения (или очереди, если плейлист уже присутствует) для некоторых видео.
До сих пор в моей папке ~ / bin / я создал файл `` myvlc '' с помощью следующей команды:
#!/usr/bin/env bash
vlc --http-port 54444 %U
Это работает как команда, если я установил ее как команду запуска в значок, но он не работает, если из командной строки я набираю: myvlc ~ / Videos / Some \ Folder / video.avi
Как я могу изменить этот скрипт bash и заставить его работать?
Псевдонимы позволяют вам добавлять больше аргументов и «отменять» текущие команды. Например, этот псевдоним:
alias hvlc='vlc --http-port 54444'
сделает
hvlc -v /path/to/my/movie.mkv
стать
vlc --http-port 54444 -v /path/to/my/movie.mkv
Если вам нравится псевдоним, установите его навсегда:
echo "alias hvlc='vlc --http-port 54444'" >> ~/.bash_aliases
Файл ~/.bashrc
по умолчанию, установленный для пользователей в Ubuntu, будет источником файла ~/.bash_aliases
по умолчанию.
Подробнее об псевдонимах в более раннем ответе обо мне.
Он не передает аргументы команде vlc
, как это передано «родительскому» скрипту Bash. Чтобы это исправить, сделайте строку
vlc --http-port 54444 $@
$@
- это магия Bash для «всех аргументов». %U
используется только в файлах .desktop
в графических интерфейсах и представляет собой магическую строку для размещения URL-адреса, который будет открыт.