【发布时间】:2021-11-21 17:25:05
【问题描述】:
执行最终输出我缺少什么?这样做的原因是它提示输入 url 并构建完整的命令,如果我复制并粘贴到终端,该命令也可以工作,但执行它所做的只是显示命令而不执行它?
#! /bin/bash
echo "paste youtube url"
read URL
printf "yt-dlp -f 'bv*[ext=mp4]+ba[ext=m4a]/b[ext=mp4] / bv*+ba/b' $URL \n"
当我跑步时
#! /bin/bash
echo "paste youtube url"
read URL
"yt-dlp -f 'bv*[ext=mp4]+ba[ext=m4a]/b[ext=mp4] / bv*+ba/b' $URL"
我得到没有这样的文件或目录,即使输出可以被复制并在另一个终端中运行并且运行良好。
【问题讨论】:
-
您正在打印命令 .. 字面意思 ..
man printf -
我尝试过不使用 printf 和 echo,如何让它执行?
-
yt-dlp -f 'bv*[ext=mp4]+ba[ext=m4a]/b[ext=mp4] / bv*+ba/b' $URL你只试过那个..没有回声..没有别的..? -
如果我删除 printf 并将完整的命令放入 " " 我得到没有这样的文件或目录。但是,如果我复制它试图执行的确切命令,它确实执行得很好。我只是无法从脚本中运行它。
-
查看我对主帖的更新