我在youtube-dl之后升级了二进制本指令。locate似乎找到了它,而不是ls,并且它不能被调用。这是怎么回事?
/usr/bin $ sudo apt-get remove youtube-dl
/usr/bin $ sudo curl -L https://yt-dl.org/downloads/latest/youtube-dl -o /usr/local/bin/youtube-dl
/usr/bin $ sudo chmod a+rx /usr/local/bin/youtube-dl
/usr/bin $ locate youtube-dl
/usr/bin/youtube-dl
/usr/share/bash-completion/completions/youtube-dl
/usr/share/doc/youtube-dl
/usr/share/man/man1/youtube-dl.1.gz
/usr/share/zsh/vendor-completions/_youtube-dl
/var/lib/dpkg/info/youtube-dl.list
/var/lib/dpkg/info/youtube-dl.md5sums
/var/lib/dpkg/info/youtube-dl.postinst
/var/lib/dpkg/info/youtube-dl.postrm
/var/lib/dpkg/info/youtube-dl.preinst
/var/lib/dpkg/info/youtube-dl.prerm
/usr/bin $ youtube-dl --version
bash: /usr/bin/youtube-dl: No such file or directory
/usr/bin $ ls y*
yacc ybmtopbm yelp yes yuvsplittoppm yuvtoppm发布于 2019-05-05 20:29:45
您用curl下载到/usr/local/bin/youtube-dl,并从/usr/bin中删除了旧版本。locate并不是最新的。运行/usr/local/bin/youtube-dl。
发布于 2019-05-06 13:17:20
locate不是“实时”的:它扫描文件系统并在其内部数据库中记住文件和位置。这就是你在跑步时所发生的事情:
/usr/bin/youtube-dl您可以使用该文件位置的过时值,因为数据库(尚未更新)。您可以通过以下方式强制这样做:
slocate -uhttps://unix.stackexchange.com/questions/517268
复制相似问题