Résolu le 29-11-18 [RESOLU] débuter en script bash ptit soucis

Questions concernant les lignes de commandes
Répondre
calixtus06
Messages : 172
Enregistré le : ven. 11 nov. 2016 19:34
Localisation : Vinay (38)

[RESOLU] débuter en script bash ptit soucis

Message par calixtus06 »

Hello world

Voilà je me tente au script bash

J'ouvre un fichier avec nano en étant en root

Code : Tout sélectionner

#!/bin/bash
Echo "hello world"
Je l'enregistre sur le répertoire Bureau

Dans un autre terminal, depuis Bureau je le rend executable

Code : Tout sélectionner

chmod +x script.sh

Code : Tout sélectionner

./script.sh
veut pô ( ??)

Image

C'est quoi l'épisode que j'ai loupé ??

Merci d'avance
Modifié en dernier par calixtus06 le mar. 21 mars 2017 00:37, modifié 1 fois.
ACER ASPIRE M3641,
KDE Plasma 5.6.5, Distro: Linux Mint 18 Sarah, Intel model: DG41CN, Quad core Intel Core2 Quad Q6600, speed/max: 1596/2394 MHz, NVIDIA G73 [GeForce 7600 GT],
Network Card: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller driver: r8169
Drives: HDD Total Size: 160.0GB (34.1% used)
Memory: 3 go DDR2 Synchrone 667 MHz (1,5 ns)
Kernel: 4.4.0-21-generic x86_64 (64 bit),

Avatar du membre
mpat
Messages : 7845
Enregistré le : mar. 25 août 2015 21:12
Localisation : Belgique

Re: débuter en script bash ptit soucis

Message par mpat »

Code : Tout sélectionner

#!/bin/bash
echo hello world
exit 0 

Code : Tout sélectionner

cd Bureau

Code : Tout sélectionner

chmod +x script.sh

Code : Tout sélectionner

./script
Modifié en dernier par mpat le lun. 20 mars 2017 21:41, modifié 2 fois.
Clevo P775DM3-G
I7 -7700k (quad-core (8 threads) 4.2-4.5 ghz
ram 64go DDR4
Nvidia gtx 1080 8go GDDR5X
2 x ssd 500go m.2 Samsung + 2 to ssd Samsung
Lmint 18.3 Cinnamon 64bit, kernel 4.13.0-45

Avatar du membre
WarLocG
Messages : 96
Enregistré le : mer. 20 avr. 2016 18:39
Localisation : Belgique

Re: débuter en script bash ptit soucis

Message par WarLocG »

Ton erreur c'est juste que 'Echo' avec une majuscule n'est pas une commande reconnue. La bonne commande est 'echo'. GNU/Linux étant sensible à la casse il différencie une commande écrite avec majuscule d'une écrite sans.

Il semblerait que tu aies aussi copié le GNU Nano avec dans ton texte. Tu peux mettre des lignes en commentaires en les précédant de #

Et sinon, exit 0 n'est pas indispensable car le programme sort par défaut avec un code 0 si tout se passe bien mais pourra servir à sortir du script en cas d'erreur avec exit 1 ou autre nombre. Par exemple.

Code : Tout sélectionner

#! /bin/bash

if [ $(id -nu) != "root" ]; then
  echo "Vous n'avez pas les privileges superutilisateur"; exit 1
else
  echo "!!! Attention execution depuis root !!!";
fi
On va tester sa fonction et ses sorties de codes erreurs.

Code : Tout sélectionner

warlocg@debian-8:~$ sh script_root.sh 
Vous n'avez pas les privileges superutilisateur
warlocg@debian-8:~$ sh script_root.sh | echo $?
1
warlocg@debian-8:~$ sudo sh script_root.sh 
!!! Attention execution depuis root !!!
warlocg@debian-8:~$ sudo sh script_root.sh | echo $?
0
Le $? affichant le code d'erreur généré par la commande.
Modifié en dernier par WarLocG le lun. 20 mars 2017 18:43, modifié 4 fois.

Avatar du membre
tyrry
Messages : 5607
Enregistré le : mar. 21 juil. 2015 07:42
Localisation : à l'ouest

Re: débuter en script bash ptit soucis

Message par tyrry »

Slt ,
pour expliquer :
tu as mis Echo au lieu de echo : bref pas de majuscule , linux est sensible à la case ;)
ensuite tu as pas "terminer" le script : exit 0
@+
Desktop: LXDE Distro: Debian 12 Bookworm
Kernel: 6.1.0-18-amd64 Drive: Intel Nvme 240
CPU: Ryzen 3 PRO 2200GE RAM: 16 go Graphics Card: AMD ATI Radeon Vega Series

Avatar du membre
roromint
Messages : 2728
Enregistré le : dim. 28 févr. 2016 21:09
Localisation : ath

Re: débuter en script bash ptit soucis

Message par roromint »

+10 warlocg a raison pour dire un enlèvement de # :)
cordialement,
Ro.
-------------------------------------------------------
PS à lire du attentif pour mon handicap : je suis malentendant Étant dyslexique, j'ai des problèmes quant à la rédaction de messages en français courant. Je vous prie dès lors d'accepter toutes mes excuses si mes interventions peuvent vous paraître étranges et je vous remercie d'avance pour votre compréhension.
PS: pour les membres, ne pas faire la message privé de moi svp ! merci

mpedro
Messages : 1517
Enregistré le : dim. 8 nov. 2015 22:13
Contact :

Re: débuter en script bash ptit soucis

Message par mpedro »

Code : Tout sélectionner

chmod -x script ou chmod +x script
C'est quoi la différence?
Stretch 32bits cinnamon/Fedora25/Sarah
Compaq 8510p/MSI GE70/Raspberry Pi2

Avatar du membre
WarLocG
Messages : 96
Enregistré le : mer. 20 avr. 2016 18:39
Localisation : Belgique

Re: débuter en script bash ptit soucis

Message par WarLocG »

@mpedro
La première commande retire les droits en exécution sur le fichier et la deuxième commande le rajoute. Tu as - (moins), = (égal) et + (plus).
chmod a=rw fichier01 -> tous pourront lire (Read) et écrire (Write)
chmod ug+x fichier01 -> tous ce qui utilisateur et groupe propriétaire obtiennent en plus l’exécution (eXecute)
chmod o-w fichier01 -> tous ce qui est autre (ni utilisateur ni groupe propriétaire) perdent l'écriture
Et puis tu as les sticky-bits aussi mais je vais pas aller trop loin.
Et enfin tu as la facon binaire pour utiliser chmod aussi: comme chmod 777 fichier01 qui représente chmod a=rwx, donc rwxrwxrwx. Pour y voir plus clair r=4, w=2 et x=1, le full power équivaut donc a lire (4) + écrire (2) + exécuter (1), ce qui fait 7. Réparti sur User (u), Group (g) et Other (o), ( All (a) étant la somme des trois) => ca fait u[r,w,x] + g[r,w,x] + o[r,w,x]. Je sais pas si c'est clair assez.

calixtus06
Messages : 172
Enregistré le : ven. 11 nov. 2016 19:34
Localisation : Vinay (38)

Re: débuter en script bash ptit soucis

Message par calixtus06 »

hello merci à vous .Cela a fonctionné. Que me conseillez vous pour la suite ?
ACER ASPIRE M3641,
KDE Plasma 5.6.5, Distro: Linux Mint 18 Sarah, Intel model: DG41CN, Quad core Intel Core2 Quad Q6600, speed/max: 1596/2394 MHz, NVIDIA G73 [GeForce 7600 GT],
Network Card: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller driver: r8169
Drives: HDD Total Size: 160.0GB (34.1% used)
Memory: 3 go DDR2 Synchrone 667 MHz (1,5 ns)
Kernel: 4.4.0-21-generic x86_64 (64 bit),

Avatar du membre
WarLocG
Messages : 96
Enregistré le : mer. 20 avr. 2016 18:39
Localisation : Belgique

Re: [RESOLU] débuter en script bash ptit soucis

Message par WarLocG »

De jouer avec des conditions puis avec des boucles, puis de mixer les deux. Et pour la suite laisse libre court à ton imagination :)

calixtus06
Messages : 172
Enregistré le : ven. 11 nov. 2016 19:34
Localisation : Vinay (38)

Re: [RESOLU] débuter en script bash ptit soucis

Message par calixtus06 »

ok je vais fouiller dans ce sens !
re merci !
ACER ASPIRE M3641,
KDE Plasma 5.6.5, Distro: Linux Mint 18 Sarah, Intel model: DG41CN, Quad core Intel Core2 Quad Q6600, speed/max: 1596/2394 MHz, NVIDIA G73 [GeForce 7600 GT],
Network Card: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller driver: r8169
Drives: HDD Total Size: 160.0GB (34.1% used)
Memory: 3 go DDR2 Synchrone 667 MHz (1,5 ns)
Kernel: 4.4.0-21-generic x86_64 (64 bit),

Répondre