Chaque fois que je compile et exécute un fichier c, je dois taper:

Gcc filename.c

A.out

Je ne veux pas faire cela en deux lignes, Comment compiler et exécuter en une seule ligne sur le terminal Linux?

3
online.0227 25 janv. 2017 à 22:48

3 réponses

Meilleure réponse

Essayer

gcc filename.c && a.out

Il n'exécute la deuxième commande que si la première a réussi. Voir https: // askubuntu .com / questions / 334994 / lequel-est-mieux-utiliser-ou-exécuter-plusieurs-commandes-en-une-ligne

12
Community 13 avril 2017 à 12:22

J'ai ce script bash enregistré sous crepl dans mon chemin de recherche:

#!/bin/bash
gcc -std=c99 -Wall -Wextra -Wpedantic -Werror $1 -o tempout &&\
    ./tempout && rm tempout

Lorsque je souhaite tester rapidement un code source enregistré dans, par exemple myfile.c, je peux saisir sur la ligne de commande:

crepl myfile.c

Le code ne sera pas compilé et exécuté s'il y a des avertissements, mais si la compilation réussit, le programme s'exécute et l'exécutable temporaire est supprimé après l'exécution.

0
ex nihilo 25 janv. 2017 à 21:51

Vous pouvez séparer les commandes avec un ;. Donc par exemple:

gcc filename.c; ./a.out

Cependant, vous ne souhaiterez probablement exécuter a.out que si la compilation a réussi. Pour cela, vous pouvez utiliser &&:

gcc filename.c && ./a.out
3
melpomene 25 janv. 2017 à 20:04