#1 Le 17/07/2006, à 14:57
- bioman
[Résolu] Equivalent de la commande pause du DOS
Bonjour,
Existe t-il une commande équivalente à celle du DOS, la commande pause?
C'est pour permettre de visualiser les résultats d'un script bash sur la console car elle se ferme avant que je puisse voir quoique ce soit.
Dernière modification par bioman (Le 18/07/2006, à 02:14)
Hors ligne
#2 Le 17/07/2006, à 15:02
- Michel38
Re : [Résolu] Equivalent de la commande pause du DOS
Bonjour,
sleep xxx où xxx doit (?) être le nombre de secondes
LM18.3 - Kernel: 4.4.0-53-generic i686 (32 bit gcc: 5.4.0) - Cinnamon 3.4.6 (Gtk 3.18.9-1ubuntu3.3)
System: CLEVO (portable)
CPU : Dual core Intel Core i5-3230M
Card : Intel 3rd Gen Core processor Graphics Controller
Hors ligne
#3 Le 17/07/2006, à 15:16
- bioman
Re : [Résolu] Equivalent de la commande pause du DOS
Oui c'est ça, merci.
sleep
sleep amount[units] sleep option
Wait a specified amount of time before executing another command. units may be s (seconds), m (minutes), h (hours), or d (days). The default for units is seconds.
Options
--helpPrint usage information and exit.
--version
Print version information and exit.
Hors ligne
#4 Le 17/07/2006, à 15:34
- Michel38
Re : [Résolu] Equivalent de la commande pause du DOS
Un petit résolu ?
LM18.3 - Kernel: 4.4.0-53-generic i686 (32 bit gcc: 5.4.0) - Cinnamon 3.4.6 (Gtk 3.18.9-1ubuntu3.3)
System: CLEVO (portable)
CPU : Dual core Intel Core i5-3230M
Card : Intel 3rd Gen Core processor Graphics Controller
Hors ligne
#5 Le 17/07/2006, à 16:32
- vinc1008881
Re : [Résolu] Equivalent de la commande pause du DOS
je ne trouve pas que ce soit vraiment équivalent car sleep attend et relance le programme alors que pause attent un appui clavier, avec pause on a bien le temps de lire.
la commande read n'est t-elle pas mieux ?
Hors ligne
#6 Le 17/07/2006, à 17:30
- coffee
Re : [Résolu] Equivalent de la commande pause du DOS
read attend une entrée fini par entré (ou ctrl D)
mais bien sur ça dépend du contenu du script
http://abs.traduc.org/abs-3.7-fr/dosbatch.html
Nom d'un tupperware habillé en streetware mangeant de la confiture de pouère et qui se dite où est-ce que je suis ouère !
Tiens mon blog
Les blagues sous forme de fausses aides sont susceptible de ban (ex: rm)
Hors ligne
#7 Le 11/01/2007, à 13:26
- deltamoins
Re : [Résolu] Equivalent de la commande pause du DOS
Bonjour
Je me pose la même question que bioman mais en effet, il vaudrait mieux une commande qui attende une frappe au clavier.
J'ai essayé read mais ça ne marche pas. Voilà mon "code" :
#/bin/bash
rsync -Pravz --delete /home/deltamoins/ delta@serveur.fr:/rep/sauv/
read
Est-ce que quelqu'un pourrait me dire pourquoi il ferme la fenre après avoir fait la suvegarde ?
Merci d'avance
Hors ligne
#8 Le 20/01/2007, à 15:29
- djoole
Re : [Résolu] Equivalent de la commande pause du DOS
Hello, voici le code qui donne un équivalent de la commande pause de DOS :
#!/bin/sh
echo "Appuyer sur Entrée pour continuer..."
read a
Note : le a qui suit read n'est pas important, mais il faut mettre un argument à cette commande sinon cela ne marche pas!
Dernière modification par djoole (Le 20/01/2007, à 15:30)
Hors ligne
#9 Le 24/01/2007, à 12:09
- kaworu
Re : [Résolu] Equivalent de la commande pause du DOS
Hello, voici le code qui donne un équivalent de la commande pause de DOS :
#!/bin/sh echo "Appuyer sur Entrée pour continuer..." read a
Note : le a qui suit read n'est pas important, mais il faut mettre un argument à cette commande sinon cela ne marche pas!
Un read sans variable associée assigne son entrée à la variable dédiée $REPLY.
Dernière modification par kaworu (Le 24/01/2007, à 12:09)
"There are in order of increasing severity: lies, damn lies, statistics, and computer benchmarks."
Hors ligne
#10 Le 24/01/2007, à 20:43
- djoole
Re : [Résolu] Equivalent de la commande pause du DOS
Prout prout,
Je sais pas ce que tu cherches à expliquer par ton quote kaworu (j'ai épuisé mon quota réflexion de la journée).
N'empêche que le script suivant
#!/bin/sh
read
renvoie read: 2: arg count et ne marque pas la pause
Tandis que le script suivant
#!/bin/sh
read a
marque bien la pause et ne renvoie pas d'erreur
Dernière modification par djoole (Le 24/01/2007, à 20:43)
Hors ligne
#11 Le 25/01/2007, à 19:49
- tarte en pion
Re : [Résolu] Equivalent de la commande pause du DOS
Bonjour!
J'aimerai savoir l'équivalent de sleep en python...
Merci!
EDIT: raw_input() trouvé ici.
REEDIT: NOn, zut, ça c'est vraiment pour "pause"! Moi j'aurai besoin de définir un nombre de secondes! .... ?
Dernière modification par tarte en pion (Le 25/01/2007, à 20:28)
Hors ligne
#12 Le 25/01/2007, à 20:45
- naholyr
Re : [Résolu] Equivalent de la commande pause du DOS
import time
time.sleep(60)
Messagerie instantanée : naholyr@jabber.fr
Envoyer vos images sur le web d'un clic !
Choix du système à rebooter (graphique)
Hors ligne
#13 Le 25/01/2007, à 20:47
- tarte en pion
Re : [Résolu] Equivalent de la commande pause du DOS
Merci! Je viens de le trouver moi-même il y a 3 secondes! Mais merci!
Hors ligne
#14 Le 25/01/2007, à 20:53
- Spalax
Re : [Résolu] Equivalent de la commande pause du DOS
Et en redirigeant la sortie vers more ou less, ne serait-ce pas plus simple ?
maCommande | less
Hors ligne
#15 Le 26/01/2007, à 00:43
- kaworu
Re : [Résolu] Equivalent de la commande pause du DOS
Prout prout,
Je sais pas ce que tu cherches à expliquer par ton quote kaworu (j'ai épuisé mon quota réflexion de la journée).
N'empêche que le script suivant#!/bin/sh read
renvoie read: 2: arg count et ne marque pas la pause
Tandis que le script suivant
#!/bin/sh read a
marque bien la pause et ne renvoie pas d'erreur
read est un shell built-in (c'est à dire qu'il est lié au shell et non pas à un programme externe).
Ta situation est "étrange" car dans le guide que je quote (l'excellent guide sur Bash) il est en faite dis que l'on peut faire :
alex@gentoo ~ $ read
tatin !
alex@gentoo ~ $ echo $REPLY
tatin !
alex@gentoo ~ $
et ça marche chez moi.
J'ai d'abord cru qu'Ubuntu utilisait une version louche de bash (ce qui ne dois pas être le cas), mais j'ai compris en relisant plus attentivement.
En faite si tu fais ça dans une session Bash que tu ouvre (avec un terminal) ça devrait marcher.
Le fait est que tu as mis comme Sha-bang la ligne #!/bin/sh dans ton script, et que sous Ubuntu (>=Edgy sauf erreur) /bin/sh pointe vers /bin/dash et non plus vers /bin/bash.
Donc quand tu exécute ton script, c'est dash qui l'interprète et non pas bash. Comme dash n'est pas fait pour l'interactivité, sa fonction read est un peu moisie.
Essaye de remplacer #!/bin/sh par #!/bin/bash :
#!/bin/bash
read
et ça devrait marcher
EDIT : faire un script avec #!/bin/sh est un exercice de haute voltige (et c'est rien de le dire). En effet on ne peut jamais savoir quel shell va interpréter notre script (dash,bash,csh,zsh...).
Dernière modification par kaworu (Le 27/01/2007, à 13:28)
"There are in order of increasing severity: lies, damn lies, statistics, and computer benchmarks."
Hors ligne
#16 Le 26/01/2007, à 11:53
- djoole
Re : [Résolu] Equivalent de la commande pause du DOS
Ok, merci pour l'info, je vais esayer ce soir en pointant vers bash au lieu de sh et te dirai si ça fonctionne.
Effectivement si on peut se passer d'un argument tout pourri c'est mieux
De plus il est vrai que ça marche très bien directement sous un terminal, je n'avais le problème que depuis un script sh.
Hors ligne
#17 Le 26/01/2007, à 23:17
- djoole
Re : [Résolu] Equivalent de la commande pause du DOS
Effectivement, j'ai testé avec bash et ça fonctionne très bien.
Merci, dorénavant je lancerai mes scripts sous bash!
Hors ligne
#18 Le 27/01/2007, à 13:33
- skateinmars
Re : [Résolu] Equivalent de la commande pause du DOS
C'est n'importe quoi de changer le lien symbolique de dash vers bash.
Dash est choisi car il est sh compliant, et qu'il est bien plus rapide que bash.
Si on veut créer un script qui utilise des particularités de bash, on indique /bin/bash en shebang voila tout
Hors ligne
#19 Le 30/01/2007, à 00:33
- djoole
Re : [Résolu] Equivalent de la commande pause du DOS
Je viens de relire, et personne n'a parlé de toucher au lien symbolique de sh, juste d'utiliser #!/bin/dash plutot que #!/bin/sh
Hors ligne
#20 Le 25/10/2009, à 23:56
- Honorat
Re : [Résolu] Equivalent de la commande pause du DOS
Ta situation est "étrange" car dans le guide que je quote (l'excellent guide sur Bash) il est en faite dis que l'on peut faire :
alex@gentoo ~ $ read tatin ! alex@gentoo ~ $ echo $REPLY tatin ! alex@gentoo ~ $
et ça marche chez moi.
Slt Kaworu,
j'aimerais que que tu nous donnes plus de précision sur ton excellent guide sur Bash parce que je voudrais tout savoir sur le bash et j'aurai besoin d'un excellent guide.
Merci d'avance
/ Pour trouver sans chercher il faut \ \ (__)
| avoir longtemps chercher sans | (oo)
\ trouver... / /------\/
-------------------------------------- / | ||
Hors ligne
#21 Le 26/10/2009, à 02:15
- HP
Re : [Résolu] Equivalent de la commande pause du DOS
Essaye de remplacer #!/bin/sh par #!/bin/bash :
#!/bin/bash read
et ça devrait marcher
#!/usr/bin/env bash
C'est plus propre… et plus portable…
cat /dev/urandom >/dev/null 2>&1 #github
Hors ligne
#22 Le 26/10/2009, à 13:24
- Totor
Re : [Résolu] Equivalent de la commande pause du DOS
Bonjour,
Je sais que le sujet date mais pour apporter une précision à la demande initiale, voilà, il me semble, quelque chose qui se rapproche du "pause" MSDOS :
#!/bin/bash
read -s -n1 -p "Appuyez sur une touche pour continuer..."; echo
-- Lucid Lynx --
Hors ligne