Zsh говорит «совпадений не найдено» при попытке загрузить видео с помощью youtube-dl

19

Я скачал youtube-dl, используя pip на CrunchBang (дистрибутив Debian Wheezy). Когда я бегу

youtube-dl {video URL}

я получил

zsh: no matches found: {video URL}

Я предполагаю, что это как-то связано с zsh, потому что я нашел, что некоторые пользователи на форумах Arch жалуются на это. Когда я перешел на bash, это сработало.

Lynob
источник
@ Ramhound хорошо переключиться на Bash не имеет большого значения, но зачем переходить на Bash каждый раз, когда вы хотите скачать видео? кроме того, что я работал в virualenv, переключился на bash, чтобы попробовать его, и теперь мой virtualenvwrapper испорчен, мне нужно удалить его, чтобы он снова работал stackoverflow.com/questions/11507186/…
Lynob
эта команда решить мою проблему: setopt + о NoMatch Ref => unix.stackexchange.com/questions/310540/...
Paramesh

Ответы:

27

Попробуйте процитировать URL, например,

youtube-dl '{video URL}'

в вашей записи, чтобы избежать возможной интерпретации специальных символов в строке.

Даниэль Андерссон
источник
почему никто не упомянул это? это работает, я приму это через 6 минут, система не позволяет мне принять это сразу
Lynob
2
@Fischer Кстати: мой Zsh (на OS X в iTerm2 с oh-my-zsh) автоматически экранирует специфичные для оболочки символы, такие как &и !, так что может быть возможность настроить это.
Slhck
@slhck, я только что попробовал это на xterm, не работает, у меня нет xterm2, я тоже использую oh-my-zsh .. да, я думаю, мне нужно настроить zsh для этого, я думаю, что bash делает это с помощью по умолчанию, потому что я не настроил его, все еще используя конфигурацию по умолчанию
Lynob
2
@Fischer: Вам нужно будет загрузить url-quote-magicфункцию, чтобы специальные символы оболочки автоматически autoload -Uz url-quote-magic; zle -N self-insert url-quote-magic
цитировались
Котировки. Я чувствую себя идиотом ..
Myol
6

Это уже упоминалось в комментариях, но оно заслуживает своего ответа:

autoload -Uz bracketed-paste-magic
zle -N bracketed-paste bracketed-paste-magic

autoload -Uz url-quote-magic
zle -N self-insert url-quote-magic

Это приводит к тому, что вставленные URL-адреса автоматически заключаются в кавычки, не отключая глобализацию.

Радон Росборо
источник
Ой, это работает. Виноват!
Ленар Хойт