[MS DOS] & CygWIN & Wget
Dernière réponse : dans Programmation
Bonjour,
Je cherche le moyen de crée un .bat qui demande une ouverture d'une page web en boucle, qu'il l'a ferme une fois ouverte et que si possible le faire (le travail) en arriére plan.
Je m'explique :
1. on lance le fichier .bat
2. le fichier ouvre une page web (en arriére plan si possible)
3. qu'il ferme la page web en suite
4. qu'il refasse ça en boucle
Le problème c'est que je ne sais pas faire et je voudrais savoir si c'est réalisable...
Voili merci
Je cherche le moyen de crée un .bat qui demande une ouverture d'une page web en boucle, qu'il l'a ferme une fois ouverte et que si possible le faire (le travail) en arriére plan.
Je m'explique :
1. on lance le fichier .bat
2. le fichier ouvre une page web (en arriére plan si possible)
3. qu'il ferme la page web en suite
4. qu'il refasse ça en boucle
Le problème c'est que je ne sais pas faire et je voudrais savoir si c'est réalisable...
Voili merci
Autres pages sur : dos cygwin wget
Lassé par la pub ? Créez un compte
J'ai essayer ça marche pour ouvrir la page, mais il ne la ferme pas et lorsque que je la ferme manuellement, il boucle bien mais ne reouvre pas la page.
Non c'est pas pour faire passer un site intéressant ^^
edit: non finalement ça marche assez bien :-), juste qu'il ne ferme pas la page mais je pense que si il la ferme il va en reouvrir une ça va saturer le pc. Il n'y a pas un autre moyen sans faire intervenir internet explorer ?
Non c'est pas pour faire passer un site intéressant ^^
edit: non finalement ça marche assez bien :-), juste qu'il ne ferme pas la page mais je pense que si il la ferme il va en reouvrir une ça va saturer le pc. Il n'y a pas un autre moyen sans faire intervenir internet explorer ?
Concernant la partie "fermer le navigateur"
Sous DOS, je ne vois pas de solution. Pour s'avoir si c'est possible demander au spécialiste du batch : Batchy
: D
Sinon, tu peux peut-être utiliser autre chose que le DOS. Un petit programme compilé (ou pas) en VB, C/C++, Delphi, et qui appelle ShellExecute ( ) pour lancer l'ouverture de la page et qui en profite pour en récupérer le numéro de processs. Puis un CloseWindow () sur ce numéro et hop, y'a plus de navigateur.
Autrement, peux-tu utiliser l'environnement CygWIN ?
Alors c'est de la balle :
Concernant " Il n'y a pas un autre moyen sans faire intervenir internet explorer ?"
Il va falloir préciser ta demande.
Mais qu'est-ce que tu veux donc faire avec un truc pareil ?!
Sous DOS, je ne vois pas de solution. Pour s'avoir si c'est possible demander au spécialiste du batch : Batchy
: DSinon, tu peux peut-être utiliser autre chose que le DOS. Un petit programme compilé (ou pas) en VB, C/C++, Delphi, et qui appelle ShellExecute ( ) pour lancer l'ouverture de la page et qui en profite pour en récupérer le numéro de processs. Puis un CloseWindow () sur ce numéro et hop, y'a plus de navigateur.
Autrement, peux-tu utiliser l'environnement CygWIN ?
Alors c'est de la balle :
while [ true ] ; do
"C:\Program Files\Internet Explorer\IEXPLORE.EXE" "<a href="http://www.presence-pc.com" target="_blank">www.presence-pc.com</a>" &
sleep 10
kill -9 %`jobs | sed -n "s/\(\[\)\([0-9]*\)\(].*Running.*IEXPLORE\.EXE.*\)/\2/p" | head -1`
echo ""
done
Concernant " Il n'y a pas un autre moyen sans faire intervenir internet explorer ?"
Il va falloir préciser ta demande.
Mais qu'est-ce que tu veux donc faire avec un truc pareil ?!
Je vais me renseigner pour l'environnemnt CygWIN je ne connais pas, mais a mon avis je crois c'est mieux que les fichier.bat ^^
"Pour un autre moyen sans faire parvenir internet explorer", c'est juste que si il peut faire travailler une page web en arriére plan, mais aussi j'ai peur qu'elle ce charge trop vite (qu'il la recharge trop vite) ou alors en ouvrir plusieur a la fois.
Le "logiciel" que je veux faire n'a en lui même pas d'interet propre je veux juste faire un petit truc qu'il ouvre page web a répétition. Non ce n'est pas pour faire monté la popularité d'un site ;-)
"Pour un autre moyen sans faire parvenir internet explorer", c'est juste que si il peut faire travailler une page web en arriére plan, mais aussi j'ai peur qu'elle ce charge trop vite (qu'il la recharge trop vite) ou alors en ouvrir plusieur a la fois.
Le "logiciel" que je veux faire n'a en lui même pas d'interet propre je veux juste faire un petit truc qu'il ouvre page web a répétition. Non ce n'est pas pour faire monté la popularité d'un site ;-)
Citation :
Sous DOS, je ne vois pas de solution. Pour s'avoir si c'est possible demander au spécialiste du batch : Batchy
: D[méthode barbare]sinon il n'y a pas moyen de faire quelque chose avec un telnet ?[/méthode barbare]
J'ai reussi pour cygWIN mais il kill pas la page. Pour la méthode barbare je suis preneur, mais je suis pas sur ça marche avec telnet. Sinom il n'y a pas un moyen pour compiler un petit programme comme celui-là ? Pour les requetes anonyme je veux dire que lorsque le navigateur se connecte l'adresse ip n'est pas diffusé
Sur MS-DOS le sleep ne fonctionne pas.
Sur MS-DOS le sleep ne fonctionne pas.
Quelle adresse ? Celle du client ! C'est bien sûr obligatoire, sinon comment le serveur saurait-il te renvoyer la page ?
A moins de spoofer tes requêtes avec une fausse adresse. Mais là, ce n'est plus dans la cat. programmation mais dans la cat. piratage --> le spoofing c'est mal.
Le kill et le sleep ne fonctionnent pas sous DOS ? Merci je sais.
Es-tu sûr d'exécuter le script dans une session CygWIN.
Batchy> Je crains que telnet ne puisse pas être utilisé autrement qu'en mode interactif sous DOS. Sinon, ça reste une bonne idée pour remplacer IEXPLORE dans CygWIN.
Bien sûr qu'on peut compiler une petite appli. Je t'ai déjà donné une piste sérieuse avec ShellExecute() et CloseWindow().
A moins de spoofer tes requêtes avec une fausse adresse. Mais là, ce n'est plus dans la cat. programmation mais dans la cat. piratage --> le spoofing c'est mal.
Le kill et le sleep ne fonctionnent pas sous DOS ? Merci je sais.
Es-tu sûr d'exécuter le script dans une session CygWIN.
Batchy> Je crains que telnet ne puisse pas être utilisé autrement qu'en mode interactif sous DOS. Sinon, ça reste une bonne idée pour remplacer IEXPLORE dans CygWIN.
Bien sûr qu'on peut compiler une petite appli. Je t'ai déjà donné une piste sérieuse avec ShellExecute() et CloseWindow().
Oui je suis sur d'executer le script dans une sesion CygWIN; a quoi sert "sed -n "s/\(\[\)\(" cette partie ?
Je peut utiliser qu'elle compilateur pour faire une petite appli ?
Pour le spoofing on m'a jamais dit c'était mal
Ce n'est pas mettre aussi une fausse adresse c'est d'en mettre aucune, je sais que le serveur ne sera pas où renvoyer la page, donc une redirection...je ne sais pas
Je peut utiliser qu'elle compilateur pour faire une petite appli ?
Pour le spoofing on m'a jamais dit c'était mal
Ce n'est pas mettre aussi une fausse adresse c'est d'en mettre aucune, je sais que le serveur ne sera pas où renvoyer la page, donc une redirection...je ne sais pas
Le & à la fin d'une commande la fait passer en arrière plan au sens UNIX.
On récupère le numéro du processus (au sens jobs) grâce à la commande jobs :
Pour référencer cette commande, il faut utiliser %1.
Le . c'est n'importe caractère.
Le * c'est un nombre quelconque de ce qui précède.
Les () définissent des morceaux.
Je la refais sans les \ :
On découpe donc la ligne en trois morceaux
Le premier c'est le [
le second ce sont les chiffres
le troisième c'est tout ce qui suit le crochet ] à condition que l'on ait dans l'ordre : un crochet, n'importe quoi, le mot Running, n'importe quoi, le mot IEXPLORE.EXE, n'importe quoi.
L'option -n empèche l'affichage. La commande p impose l'affichage des lignes contenant nos trois morceaux.
La commande s remplace les trois morceaux par le morceau 2 (\2).
Tout ça pour récupérer le numéro de la commande au sens de jobs. Dans l'exemple c'est 1.
On fait donc
Si tu cherches à appronfondir la question, google est ton ami : cherche regex pour expression régulière.
On récupère le numéro du processus (au sens jobs) grâce à la commande jobs :
Pour référencer cette commande, il faut utiliser %1.
kill -9 %`cmd` --- Les quotes à l'envers récupèrent
| | | le résultat de cmd
| | -------- Le % indique de considérer le processus
| | de numéro comme indiqué par la commande jobs
| ----------- -9 Ne pas juste tuer mais bien massacrer !!!
--------------- Tuer le processus
Voici cmd :| | | le résultat de cmd
| | -------- Le % indique de considérer le processus
| | de numéro comme indiqué par la commande jobs
| ----------- -9 Ne pas juste tuer mais bien massacrer !!!
--------------- Tuer le processus
jobs | sed -n "s/\(\[\)\([0-9]*\)\(].*Running.*IEXPLORE\.EXE.*\)/\2/p" | head -1
| |
| juste une seule ligne au cas où --
--- editeur non interactif
| |
| juste une seule ligne au cas où --
--- editeur non interactif
sed -n "s/expr/expr/p"
| | |
| | -- Commande print de sed
| -------------- Commande substitute de sed
----------------- N'afficher que les lignes trouvées
Le \ protège les caractères spéciaux.| | |
| | -- Commande print de sed
| -------------- Commande substitute de sed
----------------- N'afficher que les lignes trouvées
Le . c'est n'importe caractère.
Le * c'est un nombre quelconque de ce qui précède.
Les () définissent des morceaux.
Je la refais sans les \ :
([)([0-9]*)(].*Running.*IEXPLORE.EXE.*\)
On découpe donc la ligne en trois morceaux
Le premier c'est le [
le second ce sont les chiffres
le troisième c'est tout ce qui suit le crochet ] à condition que l'on ait dans l'ordre : un crochet, n'importe quoi, le mot Running, n'importe quoi, le mot IEXPLORE.EXE, n'importe quoi.
L'option -n empèche l'affichage. La commande p impose l'affichage des lignes contenant nos trois morceaux.
La commande s remplace les trois morceaux par le morceau 2 (\2).
Tout ça pour récupérer le numéro de la commande au sens de jobs. Dans l'exemple c'est 1.
On fait donc
kill -9 %1
Si tu cherches à appronfondir la question, google est ton ami : cherche regex pour expression régulière.
joyeusepaques a dit :
Pour le spoofing on m'a jamais dit c'était mal
Ce n'est pas mettre aussi une fausse adresse c'est d'en mettre aucune, je sais que le serveur ne sera pas où renvoyer la page, donc une redirection...je ne sais pas
un des moyens (qui est du spoofing) est de pirater un autre ordinateur pour qu'il se connecte au site à ta place, par contre ça c'est tout sauf légal ...
hum je ne sais pas me servir de wget et je vois pas a quoi il pourrais bien m'aider...c'est un logiciel que je ne connais pas donc bien sur je vais rechercher a quoi il sert.
Par contre je ne sais pas comment je fais avec mon fichier .bat, pour lui demander de travailler en arriére plan, de fermer la page, le temps d'arrêt etc...
Le fichier .bat reste le plus simple et le plus efficace apparament donc...
Par contre je ne sais pas comment je fais avec mon fichier .bat, pour lui demander de travailler en arriére plan, de fermer la page, le temps d'arrêt etc...
Le fichier .bat reste le plus simple et le plus efficace apparament donc...
wget récupère ta page et ne fait que cela sans ouvrir de navigateur.
Coté serveur, l'ouverture de la page a été vu, côté client, aucune application ne reste ouverte. C'est donc la solution la plus élégante. Récupère SLEEP.EXE dans unxutils.
Coté serveur, l'ouverture de la page a été vu, côté client, aucune application ne reste ouverte. C'est donc la solution la plus élégante. Récupère SLEEP.EXE dans unxutils.
:DEBUT
wget <a href="http://www.presence-pc.com" target="_blank">www.presence-pc.com</a>
sleep 10
goto DEBUT
Lassé par la pub ? Créez un compte
, wget de unxutils est fourni avec un fichier d'aide au format WINDOWS. Tu peux en modifier les chaînes