Ошибка слишком длинного имени файла в bash

прелесть - ты меня опередил. Всегда приятно видеть, как другие отвечают на вопросы. Для записи вы могли бы сказать -i: .1, что будет использовать значение по умолчанию в 1 секунду для непроцессных данных, но, поскольку у вас их нет, набирать немного меньше;)

Чтобы также было очень ясно , имена процессов немного неудобны. С f вам нужно имя, которое записывается в / proc / pid / stat, что часто работает. Если вы используете c, он будет соответствовать всему в / proc / pid / cmdline, которое содержит путь к команде и даже переключатели. Мое практическое правило: если вы не можете найти его с помощью f, попробуйте c. Я также предполагаю, что вы знакомы с p, P и другими опциями? Я никогда не могу вспомнить их все, поэтому всегда обращаюсь к collectl --showsubopt, чтобы увидеть их все.

-mark

1
08.06.2019, 02:42
1 ответ

У вас проблемы со скриптом:

$video=youtube-dl -g -f bestvideo https://youtubeurl

Это недопустимый синтаксис. Присвоение переменной не может начинаться с $(, как это принято в некоторых других языках ). Кроме того, кажется, что вы действительно хотите использовать подстановку команд там:

video=$(youtube-dl -g -f bestvideo https://youtubeurl)

Кроме того, когда вы повторяете $video, вы должны заключать его в кавычки (, как и при использовании переменных почти во всех других сценариях):

echo "$video"

Наконец, нет необходимости устанавливать videoв качестве пустого параметра в начале вашего скрипта, хотя это не вызовет никаких проблем.

Попробуйте использовать скрипт как:

#!/bin/bash

video=$(youtube-dl -g -f bestvideo https://youtubeurl)
echo "$video"
3
27.01.2020, 23:22

Теги

Похожие вопросы