J'utilise Ubuntu 12.10 et je veux exécuter un ensemble de commandes dans le terminal, et d'après ce que je vois dans les instructions, ces commandes démarrent chacune sur une nouvelle ligne. Je ne sais pas comment faire cela dans le terminal. Je ne trouve pas la touche sur laquelle appuyer pour effectuer le retour chariot à la ligne suivante.
command-line
Debbie Poole
la source
la source
&&
au lieu de;
. De cette façon, si l'une des commandes échoue, les commandes restantes ne seront pas exécutées. Donc, en utilisant votre exemple, s'ilhome
n'existe pas, vous ne créerez pas accidentellement untest
répertoire dans le répertoire courant.Réponses:
Les commandes que vous voyez sur chaque ligne doivent être exécutées une par une.
Donc, après avoir entré une ligne, appuyez sur Entrée pour exécuter puis exécutez la commande suivante.
Exemple:
Ce sont deux commandes à exécuter une par une.
Pour exécuter à la fois ce sera comme
sudo apt-get update && sudo apt-get upgrade
(il existe aussi d'autres méthodes), mais ces choses ne nécessitent généralement pas. Alors ne t'inquiète pas. Tapez une ligne et appuyez sur Entrée, elle fera son travail.la source
Comme Web-E explique la façon la plus directe de faire ce que vous voulez avec deux commandes différentes, j'ai pensé que je montrerais qu'il existe plusieurs façons d'exécuter plusieurs commandes ou de continuer des commandes sur une autre ligne sans les exécuter immédiatement.
Poursuite des commandes longues:
1) La façon la plus courante de construire une longue commande est d'entrer vos commandes, puis d'utiliser une barre oblique inverse
\
, d'appuyer sur Entrée , puis Bash vous fournira une autre invite au lieu d'exécuter la commande. Cette invite secondaire est appelée PS2 et attend votre entrée:Vous pouvez continuer à ajouter des barres obliques inverses et à appuyer sur Retour aussi longtemps que vous le souhaitez, tant que vous pensez que la commande globale aura du sens.
Vous pouvez annuler cette invite secondaire avec le signe Ctrl+ habituel C.
2) Bash reconnaît certaines commandes comme pour les boucles (pour i dans ....) et l'invite apparaîtra immédiatement; tout comme si vous manquez un guillemet d'une commande:
Commandes multiples :
3) Comme le note Lxnslck , vous pouvez séparer les commandes par des points-virgules:
4) Ou vous pouvez utiliser l'esperluette
&&
pour joindre deux commandes:la source
Vous pouvez appuyer sur la touche ENTER après chaque ligne et si la commande n'est pas terminée (commandes mutilines comme les
for
boucles par exemple), le terminal attendra que vous entriez le reste de la commande. Si la commande est terminée, elle sera exécutée et vous entrez la commande suivante après, pas de problème.Si vous copiez les commandes d'un didacticiel, vous pouvez copier tout le groupe de commandes et le coller directement dans le terminal et cela fonctionnera.
la source
Lorsqu'il s'agit d'un ensemble de commandes que vous prévoyez d'utiliser plus d'une fois, vous devez les placer dans un fichier de script bash . Par exemple,
n'est rien que vous aimeriez taper à nouveau, mais il m'arrive d'avoir besoin de cette séquence particulière de commandes très souvent. Il va donc dans un fichier appelé
1280x980-2head.sh
, vous pouvez le créer avec n'importe quel éditeur de votre choix. Pour ce script exécutable , vous mettez la ligne#!/bin/bash
en face de tout (un tralala ), et définir l'exécution-autorisation:chmod +x 1280x980-2head.sh
. Ensuite, il suffit de taper./128<tab>
(auto-complétion) et d'<enter>
exécuter toutes les commandes.la source
Vous pouvez tout mettre entre parenthèses; par exemple:
Les commandes seront exécutées l'une après l'autre dans un sous-shell.
Si vous ne voulez pas qu'ils soient exécutés dans un sous-shell, vous pouvez mettre un point-virgule entre une commande et l'autre; par exemple:
Au lieu de cela, si vous mettez "&&" entre chaque commande, la commande qui suit le "&&" ne sera exécutée que si la commande précédente s'est terminée sans erreur, vous n'avez donc pas à l'utiliser pour concaténer des commandes; utilisez plutôt des points-virgules. Inversement, si vous mettez "||", la commande suivante ne sera exécutée que si la première se termine avec une erreur. Exemple: (la commande "which" vérifie si un programme existe et si ne se termine pas avec une erreur)
la source