web-dev-qa-db-fra.com

Commande 'Sudo tee' a mal tourné | Supprimer une source.list qui ne peut pas être lue?

Cela est arrivé deux fois lorsque j'ai suivi les instructions d'installation du logiciel, puis que le centre logiciel a été ouvert puis fermé immédiatement à la suite de l'exécution des commandes à partir des instructions. Le premier incident s'est produit lorsque j'essayais d'installer Mono. J'ai suivi leurs instructions jusqu'à Sudo tee /etc/apt/sources.list.d/mono-xamarin.list. Le terminal arrêté ne répondait pas, j'ai donc réintégré la commande et l'a répété. Alors je l'ai fermé et essayé à nouveau sans aucune chance. Alors, je voulais vérifier si le centre logiciel ne contenait que le compilateur Mono cs et c’est à ce moment-là que le centre logiciel a commencé à fermer immédiatement après l’ouverture et Ubuntu m’a donné cette erreur.

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.

J'ai formaté mon ordinateur sur une sauvegarde précédente, incapable de trouver une réponse à cette erreur et ne sachant pas ce que j'ai fait de mal.

Maintenant, j'ai essayé d'installer Spotify et ils ont une liste d'instructions similaire.

  1. Ajouter le référentiel Spotify

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

Je l’ai donc fait jusqu’à ce que le terminal ne réponde plus. J'ai essayé 'exit' pour le fermer, mais cela rappelait la commande. Après l'avoir fermée manuellement, j'ai vérifié le centre de logiciel pour voir si j'avais refait la même chose, et c'est ce que j'ai fait. Le centre de logiciel ne reste pas ouvert et a renvoyé cette même erreur lorsque j'essaie 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.

Ma première question est de savoir comment puis-je supprimer/réparer la liste et ma deuxième question, comment utiliser Sudo tee... correctement?

2
GhostRavenstorm

Votre première commande

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

est faux. La commande attend une entrée et écrit dans

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

Par conséquent, supprimez simplement le fichier

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

et relancez la commande correcte sans oublier le

Sudo apt-get update

Votre deuxième commande

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

est correct. Après cette commande, vous avez la ligne

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

dans votre /etc/apt/sources.list.d/spotify.list. Vérifier avec

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

La commande tee lit à partir de l'entrée standard et écrit dans la sortie standard et les fichiers. Deux exemples

echo "foo" | tee bar

écrit la chaîne foo dans le fichier bar. Le contenu précédent sera écrasé.

echo "foo" | tee -a bar

ajoute la chaîne foo au fichier donné.

La commande tee bar lit à partir de l'entrée standard et écrit dans le fichier bar

Commencer un test avec

tee bar

Tapez quelques mots et arrêtez avec Ctrl-C. Maintenant commencer

cat bar

pour voir vos changements.

Exemple

% tee bar
foo
foo
bar
bar
^C
% cat bar
foo
bar
0
A.B.

Je pense que j'ai compris. Je suis allé à "autres logiciels" dans les logiciels et les mises à jour et j'ai supprimé le référentiel qui se comportait mal de la liste. Ensuite, j'ai fait Sudo apt-get autoremove ce qui ne s'est pas arrêté à l'erreur cette fois, donc j'ai pu traiter en Sudo apt-get update et j'ai été en mesure d'ouvrir à nouveau le centre logiciel et de le garder ouvert. J'obtiens toujours l'erreur de système de classe disant "sortie" n'est pas connue sur la ligne 2 de spotify.list. Je ne sais toujours pas comment enlever ça.

0
GhostRavenstorm