youtube-dl「檔名太長」錯誤

youtube-dl「檔名太長」錯誤

我將 url 儲存在 bash 的變數中。它與真實的檔案路徑無關,但它一直給我錯誤檔案名稱太長。

如何告訴 bash 忽略查找檔名並將長 url 字串儲存到變數中?

我沒有使用檔案名稱。有人可以解釋並指導我為什麼會收到似乎不相關的錯誤嗎?

#!/bin/bash
video=""
$video=$(youtube-dl -g -f bestvideo https://youtubeurl)

echo $video

$ Bash 腳本.sh

錯誤:檔名太長

編輯:抱歉,我在命令之前使用了 $( ) 。我在 stackexchange 編輯器上輸入錯誤。我仍然遇到同樣的錯誤。我在 Linux 的 Windows 子系統上使用 ubuntu

答案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"

相關內容