对于 bash 完成,我想替换youtube-dl
为youtubedl
.
我可以为 建立一个别名youtubedl
,但是,两者都youtube-dl
将youtubedl
存在。
主要是,我只想youtube-dl
从 bash 补全中删除,并为youtubedl
.
答案1
更新:修改答案以澄清不适用于非软件包安装
如果您使用首先列出的手动安装进行安装youtube-dl github 页面,那么此方法将允许您使用youtube-dl
自定义名称youtubedl
,而无需看到youtube-dl
自动完成。在您的终端上:
$ cd /usr/local/bin/
$ sudo mv youtube-dl youtubedl
您现在可以使用它的新名称youtubedl
,通过测试视频尝试一下:
$ youtubedl -F 'https://www.youtube.com/watch?v=BaW_jenozKc'
您将来还可以升级:
$ youtubedl -U
保修单
- 版本:
2016.01.15
,重命名然后升级到2016.04.05
.看youtube-dl --version
- 仅使用以下位置的手动安装说明安装了 youtube-dl 进行了测试youtube-dl github 页面,未使用软件包安装方法进行测试。因此,如果 youtube-dl 是使用可能对安装位置进行硬编码的包管理系统安装的,则此答案可能不起作用
解释
这youtube-dl github 页面遵循的指示是:
$ sudo curl https://yt-dl.org/latest/youtube-dl -o /usr/local/bin/youtube-dl
$ sudo chmod a+rx /usr/local/bin/youtube-dl
- 这会将
youtube-dl
二进制文件下载到/usr/local/bin
. $PATH
自动完成时会显示其中的路径。/usr/local/bin
确实是这样的路径之一$PATH
,因此youtube-dl
将出现在 Bash 自动完成中。
因此,要重命名 Bash 自动完成中出现的内容,一种方法是重命名二进制文件本身。我们访问二进制文件的位置:
$ cd /usr/local/bin/
改名:
$ sudo mv youtube-dl youtubedl
/usr/local/bin
是一个受限目录,所以我们使用sudo
旧名称将不再被发现:
$ which youtube-dl
youtube-dl not found
现在我们可以用新名称来引用它:
$ which youtubedl
/usr/local/bin/youtubedl
我们可以测试它是否仍然有效,例如使用以下命令进行升级-U
:
$ youtubedl -U
Updating to version 2016.04.05 ...
Updated youtube-dl. Restart youtube-dl to use the new version.
测试其视频功能,例如检索格式:
$ youtubedl -F 'https://www.youtube.com/watch?v=BaW_jenozKc' | head
[youtube] BaW_jenozKc: Downloading webpage
[youtube] BaW_jenozKc: Downloading video info webpage
[youtube] BaW_jenozKc: Extracting video information
[youtube] BaW_jenozKc: Downloading MPD manifest
[info] Available formats for BaW_jenozKc:
format code extension resolution note
249 webm audio only DASH audio 47k , opus @ 50k, 57.05KiB
250 webm audio only DASH audio 66k , opus @ 70k, 79.56KiB
171 webm audio only DASH audio 74k , vorbis@128k (44100Hz), 89.59K
iB
140 m4a audio only DASH audio 127k , m4a_dash container, mp4a.40.2
@128k (44100Hz), 154.06KiB
从源代码来看update.py
,第 86 行:
filename = sys.argv[0]
- 因此,此更新代码会检测当前程序的文件名,从而使您能够
yourcustomname -U
并且仍然能够成功更新。
答案2
关于什么ln -s /usr/bin/youtube-dl ~/bin/dlyoutube