我使用了:curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash -
因为我想安装 NodeJS,但执行命令后,我意识到我使用了错误的命令。我需要 NodeJS 版本 5,而不是 4。
我还没有使用过apt-get install nodejs
。如何删除第一个命令下载的文件,以便我可以执行不同的 curl 命令,然后使用 安装 NodeJS apt-get install nodejs
?
我对 Ubuntu 还很陌生。
答案1
通过管道传输到| sudo -E bash -
,您可以执行来自 的代码https://deb.nodesource.com/setup_4.x
,这是一个 bash 脚本。
查看脚本,它似乎添加了:
print_status 'Creating apt sources list file for the NodeSource Node.js 4.x LTS Argon repo...'
exec_cmd "echo 'deb https://deb.nodesource.com/node_4.x ${DISTRO} main' > /etc/apt/sources.list.d/nodesource.list"
exec_cmd "echo 'deb-src https://deb.nodesource.com/node_4.x ${DISTRO} main' >> /etc/apt/sources.list.d/nodesource.list"
print_status 'Running `apt-get update` for you...'
exec_cmd 'apt-get update'
因此,您可以删除源,但如果您运行 5.x 脚本,它只会替换这个文件,因此无论是使用 5.x 而不是 4.x 运行相同的脚本,还是删除该文件然后运行 5.x 脚本都会给您相同的结果:
$ curl -sL https://deb.nodesource.com/setup_5.x | sudo -E bash -
$ cat /etc/apt/sources.list.d/nodesource.list
deb https://deb.nodesource.com/node_5.x wily main
deb-src https://deb.nodesource.com/node_5.x wily main
答案2
查看脚本,没有安装太多内容,直到运行 apt-get install nodejs。
PRE_INSTALL_PKGS=""
if [ ! -e /usr/lib/apt/methods/https ]; then
PRE_INSTALL_PKGS="${PRE_INSTALL_PKGS} apt-transport-https"
fi
if [ ! -x /usr/bin/lsb_release ]; then
PRE_INSTALL_PKGS="${PRE_INSTALL_PKGS} lsb-release"
fi
if [ ! -x /usr/bin/curl ] && [ ! -x /usr/bin/wget ]; then
PRE_INSTALL_PKGS="${PRE_INSTALL_PKGS} curl"
fi
我无需担心其中的任何内容。然后,随着脚本的继续,它会添加 PPA。
exec_cmd "echo 'deb https://deb.nodesource.com/node_4.x ${DISTRO} main' > /etc/apt/sources.list.d/nodesource.list"
exec_cmd "echo 'deb-src https://deb.nodesource.com/node_4.x ${DISTRO} main' >> /etc/apt/sources.list.d/nodesource.list"
我将把 nodesource.list 从 apt/sources.list.d/ 中删除
sudo rm /etc/sources.list.d/nodesource.list
然后 apt-get 更新
sudo apt-get update