Chaque fois que j'ouvre un fichier .sh, il l’ouvre dans gedit au lieu du terminal. Je ne trouve aucune option similaire à Clic droit → Ouvrir avec → Autre application ... → Terminal .
Comment puis-je ouvrir ce fichier dans le terminal?
ruby foo.rb
Chaque fois que j'ouvre un fichier .sh, il l’ouvre dans gedit au lieu du terminal. Je ne trouve aucune option similaire à Clic droit → Ouvrir avec → Autre application ... → Terminal .
Comment puis-je ouvrir ce fichier dans le terminal?
ruby foo.rb
Réponses:
Donnez la permission d'exécution à votre script:
chmod +x /path/to/yourscript.sh
Et pour lancer votre script:
/path/to/yourscript.sh
Puisque .
fait référence au répertoire actuel: si se yourscript.sh
trouve dans le répertoire actuel, vous pouvez le simplifier pour:
./yourscript.sh
bash /path/to/yourscript.sh
avez pas besoinchmod +x
. /path/to/yourscript.sh
si le script doit configurer certaines variables d’environnement.
./path/to/yourscript.sh
(sans l'espace après .
)? Je trouve que celui-ci est le plus simple et le plus facile à utiliser ... Mais enfin, voici mon alternative qui devrait faire presque la même chose que ./
je le ferais, bien que je ne vois pas pourquoi vous ne l'utiliseriez pas ./
: (FILENAME=~/rem4space.sh;SLL=$(cat $FILENAME|head -1|sed 's:^#!\(.*\):\1:g');[ ! -z $SLL ] && exec $SLL $FILENAME;sh $FILENAME)
... modifier FILENAME
à votre guise . Notez également que sh
sera utilisé s'il n'y a pas d'alternative.
Vous devez marquer les scripts de shell comme étant exécutables pour les exécuter à partir du gestionnaire de fichiers:
Faites un clic droit sur votre .sh
fichier et sélectionnez Propriétés :
Dans l' onglet Autorisations , cochez Autoriser l'exécution du fichier en tant que programme :
Fermez la Propriétés fenêtre et double-cliquez sur le fichier. Une boîte de dialogue apparaîtra vous donnant la possibilité d'exécuter le script dans un terminal:
Ouvrez un terminal et accédez au dossier dans lequel .sh
se trouve le fichier. Puis tapez:
sh <name of file>.sh
Avant de pouvoir exécuter le fichier .sh, vous devez le rendre exécutable:
Assurez-vous de faire confiance à la source d'où vous avez obtenu le fichier. Ce pourrait être un virus .
Cela a un problème. Le terminal se fermera immédiatement et vous ne pourrez pas voir la sortie.
Trouver où se trouve le fichier .sh
ls
etcd
ls
listera les fichiers et les dossiers du dossier actuel . Faites un essai: tapez "ls" et appuyez sur Entrée.cd
, suivi d'un espace, puis d'un nom de dossiercd ..
pour aller d'un niveau supérieurExécuter le fichier .sh
Une fois que vous pouvez voir par exemple script1.sh
avec ls
run this:
./script.sh
Le terminal dispose d'un riche ensemble d'outils puissants accessibles en tapant les commandes. Les professionnels localisent le fichier .sh en tapant ls
et cd
. Une fois que vous êtes dans le bon dossier actuel, vous pouvez exécuter le script de la manière suivante:
./script1.sh
ou vous pouvez exécuter et rediriger la sortie vers un fichier:
./script1.sh > out.txt
ou vous pouvez filtrer la sortie pour les mots-clés (par exemple "pommes") puis rediriger vers un fichier:
./script1.sh | grep apples > ./only-apples
Il y a des milliers de choses que vous pouvez faire dans ce fichier en tapant quelques commandes.
Un autre, vous pouvez télécharger un fichier depuis Internet avec une simple commande:
wget www.google.com/images/logos/ps_logo2.png
Et ouvrez ensuite le fichier comme ceci:
shotwell ps_logo2.png
Sous Ubuntu 13.04, les fichiers exécutables ouverts dans Nautilus sont désormais ouverts dans gedit par défaut plutôt que de demander à l'utilisateur de les exécuter. Pour activer le comportement classique, vous devez ajuster les préférences:
Nautilus → Menu Édition → Préférences → onglet Comportement → Cliquez sur le bouton radio à côté de Demander à chaque fois.
Allez dans le répertoire où se trouve le .sh
fichier en utilisant cd
. Dans cet exemple, j'ai stocké mon sh
fichier sous le nom~/Desktop/shell_practice/test.sh
Commencez pwd
par déterminer où vous vous trouvez, et si elle revient /home/username
(où username
est votre vrai nom d’utilisateur), vous pouvez lancer
cd Desktop/shell/practice
Si vous semblez être ailleurs, vous pouvez utiliser le chemin absolu
cd ~/Desktop/shell/practice
ou
cd $HOME/Desktop/shell/practice
ou même
cd /home/$USER/Desktop/shell/practice
Ce sont toutes des façons de décrire le même endroit. Une fois que vous avez atteint l'emplacement de votre script, tapez
ls
Si vous pouvez voir le sh
fichier dans la sortie, vous pouvez l'utiliser chmod
pour le rendre exécutable. Dans mon cas, rappelez-vous, le nom du fichier est test.sh
, alors je lancerais
chmod u+x test.sh
Maintenant que nous sommes dans le même répertoire que le script, nous devons spécifier au shell que nous voulons exécuter le fichier en indiquant son emplacement ./
(le répertoire en cours suivi d'un séparateur de chemin, afin de le distinguer du nom de fichier). Pour exécuter mon fichier, je taperais:
./test.sh
Si votre script a été écrit correctement, il fonctionnera sans erreur ...
2 étapes principales.
dans terminal, utilisez gedit pour écrire et sauvegarder un script avec l’extension ".sh" sur le bureau. (mais n'importe quel éditeur de texte peut être utilisé)
Ouvrez Nautilus et cliquez avec le bouton droit sur le fichier script.sh.
Sous Propriétés, cochez la case "Autoriser l'exécution du fichier".
dans le menu Nautilus, cliquez sur fichier, puis sur préférences, puis sur comportement
cochez la case "exécuter les fichiers texte exécutables à l'ouverture".
Maintenant, lorsque vous double-cliquez sur le fichier sur le bureau, il devrait s’exécuter. pas besoin .
ou./
Cliquez avec le bouton droit sur le .sh
fichier et rendez-le exécutable.
Ouvrez un terminal ( Ctrl+ Alt+ T).
Faites glisser le .sh
fichier dans la fenêtre du terminal et observez-le avec admiration.
Il y a quelques façons de le faire.
Dans le terminal, accédez au répertoire utilisé par le fichier Bash cd
(change directory).
Ex. cd Downloads
Courir bash <filename>.sh
Cela fonctionne aussi avec les fichiers .run. Vous trouverez un exemple d'utilisation de cette page Web sur la mise à jour de Rhythmbox.
Dans le terminal, accédez au répertoire dans lequel se trouve le fichier bash.
Courir chmod +x <filename>.sh
Dans Nautilus, ouvrez le fichier.
Pour Ubuntu 18.04 , il y a une petite modification, car vous n'obtenez pas de boîte de dialogue contextuelle.
Donc, ce que vous devez faire est:
Cliquez avec le bouton droit sur Fichiers, sélectionnez Préférences> Sélectionnez l'onglet Comportement> Cochez l'option "Demander quoi faire" sous Fichier texte exécutable.
Maintenant, lorsque vous double-cliquez sur n’importe quel fichier .sh, vous obtenez une popup, vous pouvez y sélectionner l’option "run in terminal" pour exécuter votre fichier .sh.
Dans Ubuntu 16.04, voici comment l’ouvrir dans Terminal:
Aller à la File Manager > Edit > Preferences > Behavior
pour Executable Text Files
et sélectionnez Ask each time
.
Le problème est qu'il est réglé par défaut sur View Executable Files when they are opened
.
Si vous placez votre script shell ou un autre exécutable que vous créez dans / usr / local / bin, il sera trouvé et exécuté sans avoir à fournir un chemin de dossier dans la ligne de commande ou à ajouter ./ au nom. Par exemple, j'ai créé le script bash simple sur 3 lignes suivant pour afficher les UUID de disque:
#!/bin/bash
echo "* UUIDs must match in /etc/fstab and /boot/grub/menu.lst"
sudo blkid
J'ai appelé le fichier uuid et l'ai placé dans / usr / local / bin. Tout ce dont j'ai besoin d'entrer sur la ligne de commande est:
uuid
Eh bien, moi aussi j'ai rencontré le même problème. Je voulais exécuter le fichier .sh qui s’est ouvert avec Gedit sous CentOS 7. Voici ce que j’ai fait:
.sh
fichier que je voulais exécuter.Le problème que j'ai trouvé sur quelques distributions est qu'elles ont masqué l'option de préférences dans Nautilus, mais le corriger dans Ubuntu et les autres distributions utilisant Gnome3 est identique comment à l'avenir).
Installer dconf-editor
sudo apt-get install dconf-editor
Exécuter en dconf-editor
utilisant le compte d'utilisateur sur lequel vous souhaitez activer cette fonctionnalité, c'est-à-dire PAS root
dconf-editor
Accédez au schéma suivant:
org.gnome.nautilus.preferences
Changez l'option par défaut pour ne pas ouvrir par défaut:
Trouvez executable-text-activation
cliquez sur le mot display
et changer pourask
cela vous donnera la possibilité d'éditer, d'afficher ou d'exécuter le fichier à l'avenir
Je suis un noob sous Linux et je viens d'avoir le même problème. Si tout échoue:
Vous pouvez également utiliser des .
astuces, avec la suggestion d'autres réponses.
Par exemple:
chmod +x filename.sh
, en supposant que vous ayez déjà accédé au chemin du fichier, puis exécutez le fichier avec l’une des commandes suivantes:
sh filename.sh
./filename.sh
. filename.sh