'sudo tee' 命令出错 | 删除无法读取的 source.list?

'sudo tee' 命令出错 | 删除无法读取的 source.list?

这种情况发生过两次,我按照说明安装软件,然后软件中心打开,然后在运行说明中的​​命令后立即关闭。第一次事件发生在我尝试安装 Mono 时。我按照他们的说明进行操作sudo tee /etc/apt/sources.list.d/mono-xamarin.list。终端停止没有响应,所以我重新输入命令,它只是回显了它。所以我关闭它并再次尝试,但没有成功。所以我想检查软件中心是否只有 Mono cs 编译器,这时软件中心在打开后立即开始关闭,ubuntu 给了我这个错误

E: Type 'sudo' is not known on line 2 in the source list /etc/apt/sources.list.d/mono-xamarin.list
E: The list of sources could not be read
E: The package lists or status file could not be parsed or opened.

我将我的计算机格式化为早期的备份,但无法找到此错误的答案,也不知道自己做错了什么。

现在我尝试安装 Spotify,他们有类似的说明列表。

  1. 添加 Spotify 存储库

    echo deb http://repository.spotify.com stable non-free | sudo tee /etc/apt/sources.list.d/spotify.list
    

所以我就这样做了,直到此时终端不再响应。我尝试“退出”来关闭它,但它只是回显了命令。在我手动关闭它之后,我检查了软件中心,看看我是否再次做了同样的事情,结果确实如此。当我尝试时,软件中心不会保持打开状态并返回相同的错误apt-get autoremove

E: Type 'exit' is not known on line 1 in source list /etc/apt/sources.list.d/spotify.list
E: The list of sources could not be read.
E: The package lists or status file could not be parsed or opened.

我的第一个问题是如何删除/修复该列表,第二个问题是如何sudo tee...正确使用?

答案1

你的第一个命令

sudo tee /etc/apt/sources.list.d/mono-xamarin.list

是错误的。该命令等待输入并写入

/etc/apt/sources.list.d/mono-xamarin.list

因此只需删除文件

sudo rm /etc/apt/sources.list.d/mono-xamarin.list

并再次启动正确的命令,不要忘记

sudo apt-get update

你的第二个命令

echo deb http://repository.spotify.com stable non-free | sudo tee /etc/apt/sources.list.d/spotify.list

是正确的。执行此命令后,您将看到以下行

deb http://repository.spotify.com stable non-free

在您的/etc/apt/sources.list.d/spotify.list。请检查

cat /etc/apt/sources.list.d/spotify.list

该命令tee从标准输入读取并写入标准输出和文件。两个例子

echo "foo" | tee bar

将字符串写入foo文件bar。先前的内容将被覆盖。

echo "foo" | tee -a bar

将字符串附加foo到给定的文件。

该命令tee bar从标准输入读取并写入文件bar

开始测试

tee bar

输入一些单词并以Ctrl-结束C。现在开始

cat bar

查看您的更改。

例子

% tee bar
foo
foo
bar
bar
^C
% cat bar
foo
bar

答案2

我想我搞明白了。我转到软件和更新中的“其他软件”,并从列表中删除了行为不当的存储库。然后我sudo apt-get autoremove这样做了,这次它没有在错误处停止,所以我能够继续处理sudo apt-get update,并且能够再次打开软件中心并保持打开状态。我仍然收到类系统错误,说 spotify.list 中的第 2 行上的“退出”未知。我仍然不知道如何删除它。

相关内容