Question Comment définir le poisson comme shell par défaut?


Existe-t-il un moyen de définir fish comme shell par défaut dans le remix netbook ubuntu? J'ai mis mon .bashrc pour lancer fish, ce qui fonctionne bien, mais ubuntu le reconnaît comme un poisson qui court dans bash, ce qui signifie que lorsque j'essaie de fermer le shell, il me prévient qu'une tâche est toujours en cours d'exécution.

Il n'apparaît pas comme une nouvelle application, donc je ne peux pas l'appliquer à ma barre comme une application normale.


94
2018-02-15 02:35


origine


De la FAQ officielle: Comment puis-je faire du poisson mon shell par défaut? - Dennis


Réponses:


Vous pouvez définir fish comme shell par défaut en exécutant

chsh -s `which fish`

Pour ce faire, ajoutez simplement le nom d'utilisateur à la fin de la commande et utilisez sudo.

Puis déconnectez-vous et revenez.

(Pour le remettre à bash, vous devez bien sûr utiliser la syntaxe Fish, comme ceci chsh -s (which bash))


131
2018-02-15 02:58



Cela ne semble pas fonctionner pour moi. Cela ne donne pas d'erreur, mais cela ne semble pas fonctionner, même si je viens d'ouvrir un nouvel onglet. Des pensées? - Xodarap
Vous devrez peut-être vous déconnecter et vous reconnecter - je l'ai juste essayé sur une machine virtuelle propre et cela a fonctionné. - ajmitch
Comment la rétablissez-vous? - knutole
Ça devrait être chsh -s /bin/bash. - lindhe
Ne lancez pas accidentellement cette commande avec sudo ou vous allez changer le shell racine à la place. - Stephen Niedzielski


usermod -s /usr/bin/fish username

Doit être exécuté en tant que root si.

Cela changera le shell définitivement pour l'utilisateur spécifié.


28
2018-02-15 09:12



Je sais que ce n'est pas Ubuntu, mais je voulais faire un commentaire: j'étais sur CentOS et je recevais un Authentication Failed erreur en essayant de changer le shell avec un utilisateur non root et après une recherche approfondie pour essayer de le comprendre, c'était la seule chose qui fonctionnait. Merci! - CWSpear
Oui, cela fonctionnera sur la plupart des versions unix qui ont un usermod et un poisson pour un shell, ou changeront le shell à la saveur de votre choix - sweetfa
Je l'ai fait et maintenant le terminal ne démarre plus. J'obtiens "Une erreur s'est produite lors de la création du processus fils pour ce terminal", "Echec de l'exécution du processus fils" / usr / bin / fish "(erreur entrée / sortie)". Comment puis-je défaire ça? - Patrick
Émettez la même commande en tant que root mais utilisez bash au lieu de fish comme shell. - sweetfa


Je viens d'ajouter la ligne fish à la fin de mon .bashrc.


14
2018-01-08 16:08



C'est la solution la plus simple et la meilleure, IMO;) - Ben Marten
Désolé, mais ce n'est pas efficace. :) Il va charger votre poisson mais au-dessus de votre bash en cours d'exécution. - M. Junaid Salaat
Pourquoi bash doit-il être efficace? @ M.JunaidSalaat - codenamejames
Au premier coup d'œil, cela ressemble à un piratage, mais après avoir utilisé mon PC avec Fish comme shell par défaut avec chsh, je suis revenu à cette solution. Certains programmes supposent que vous utilisez bash et vont planter en utilisant la syntaxe bash sur fish. Jusqu'à présent, j'ai rencontré de tels problèmes avec i3wm et matlab. - Naheel


Je suis d'accord avec le chsh est la bonne réponse. Toutefois:

Si tu cours chsh et obtenir une erreur

/usr/local/bin/fish: non-standard shell

ajoutez simplement l'emplacement binaire du poisson à /etc/shells.

A trouvé ici.


12
2018-06-06 16:17





Dans /etc/shells, ajouter /usr/local/bin/fish:

# List of acceptable shells for chpass(1).
# Ftpd will not allow users to connect who are not using
# one of these shells.

/bin/bash
/bin/csh
/bin/ksh
/bin/sh
/bin/tcsh
/bin/zsh
/usr/local/bin/fish

alors chsh -s /usr/local/bin/fish.


0
2018-04-16 14:18