Как указано в документации:
Значения ниже 0.0 интерпретируются как 0.0, а значения выше 1.0 интерпретируются как 1.0
blockquote>Это означает, что ваш значения (100, 100, 100) будут преобразованы в (1.0,1.0,1.0), что является белым. Вам нужно преобразовать каждое значение канала, используя следующее уравнение:
100: 255 = x: 1.0 => x = 100/255
где x - это значение, которое вы будет использоваться для метода
-(NSColor*)colorWithDeviceRed:CGFloat red green:CGFloat green blue:CGFloat blue alpha:CGFloat alpha];
В вашем коде должно быть что-то подобное
[NSColor colorWithDeviceRed:100.0/255.0 green:100.0/255.0 blue:100.0/255.0 alpha:1.0];
Удалите одиночную кавычку из параметра -f, он будет работать.
Например,
video="youtube-dl -f bestvideo[height<=360]+worstaudio/worst[height<=360]"
Здесь подробно объясняется: Я пытаюсь поместить команду в переменную, но сложные случаи всегда терпят неудачу!
Сначала всегда double -цитировать ваши переменные, если вы не знаете точно , что произойдет, если вы не знаете.
Вам не нужно export
эту переменную: вы не вызываете никакую другую программу, которая нуждается в ее использовании.
Если вы хотите повторно использовать команду, подумайте о том, чтобы поместить ее в функцию:
#!/bin/bash
function video {
youtube-dl -f 'bestvideo[height<=360]+worstaudio/worst[height<=360]' "$1"
}
read -p "url: " url
video "$url"
На самом деле, я бы сделал это:
source ~/.bashrc
, затем вы можете использовать его из командной строки:
video 'https://www.youtube.com/watch?v=dQw4w9WgXcQ'