首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >macos shell提示输入,然后执行

macos shell提示输入,然后执行
EN

Stack Overflow用户
提问于 2021-09-29 19:49:18
回答 2查看 33关注 0票数 1

在执行最终输出时,我遗漏了什么?它的工作原理是,它会提示输入url并构建完整的命令,如果我复制并粘贴到终端上,它也可以工作,但执行此命令所做的只是显示命令而不执行它?

代码语言:javascript
运行
复制
 #! /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"

当我跑的时候

代码语言:javascript
运行
复制
 #! /bin/bash

    echo "paste youtube url"
    read URL
"yt-dlp -f 'bv*[ext=mp4]+ba[ext=m4a]/b[ext=mp4] / bv*+ba/b' $URL"

即使输出可以被复制并在另一个终端上运行,我也得到了没有这样的文件或目录,它运行得很好。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-09-29 20:23:01

代码语言:javascript
运行
复制
yt-dlp -f 'bv*[ext=mp4]+ba[ext=m4a]/b[ext=mp4] / bv*+ba/b' $URL 

删除print命令并删除双引号--如果愿意,可以在$URL --> "$URL"两边使用它们。但它们并不是必须的。

代码语言:javascript
运行
复制
#! /bin/bash

echo "paste youtube url"
read URL
yt-dlp -f 'bv*[ext=mp4]+ba[ext=m4a]/b[ext=mp4] / bv*+ba/b' $URL

已在OS12蒙特利上测试并运行。

票数 0
EN

Stack Overflow用户

发布于 2021-09-29 20:08:31

这起作用了,我把引号弄错了。

代码语言:javascript
运行
复制
#! /bin/bash

echo "paste youtube url"
read URL
yt-dlp -f 'bv*[ext=mp4]+ba[ext=m4a]/b[ext=mp4] / bv*+ba/b' "$URL"
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69382568

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档