Изhttps://github.com/mps-youtube/mps-youtube
sudo docker run --device /dev/snd -it --rm --name mpsyt rothgar/mpsyt
На самом деле они не являются токенами в смысле лексера, за исключением простых скобок (
и )
.
{
и }
в частности вообще не нуждаются в цитировании:
$ echo {Hello World}
{Hello World}
(, за исключением случаев, когда у вас есть {
или }
в качестве первого слова команды, где они интерпретируются как ключевые слова; или если у вас есть {a,b}
в одном слове с запятой или двойной -точкой между ними, где это раскрытие фигурной скобки.)
[]
также является специальным только в качестве символов глобуса, и если нет совпадающих имен файлов,поведение по умолчанию — просто оставить слово как -.
Но в любом случае, чтобы избежать их, вы обычно заключаете их в одинарные или двойные -кавычки:
echo "(foo bar)"
echo '(foo bar)'
Или просто экранируйте соответствующие символы один -на -один, хотя это немного утомительно:
echo \(foo\ bar\)
Или любое другое сочетание, которое вам нравится:
echo \(fo"o bar"')'
См.:
Характерно для Q :реальное «побег» будет:
echo hello \(world\)
"Чистый" вызов echo с одним аргументом оболочки:
echo "hello (world)"
...и вы получаете "побег" бесплатно.
echo hello "("world")"
совершенно не поддается определению. И так далее. "Вы можете играть с эхом".
"hello $world"
и
'hello $world'
не то же самое! Сначала используйте world=mars
.