Remplacer une ligne sur plusieurs fichier dedié
17 messages • Page 1 sur 2 • 1, 2
Consultez la formation à Google Analytics de WebRankInfo / Ranking Metrics
Remplacer une ligne sur plusieurs fichier dedié
Bon ma dernière question de la journée, j'ai plusieurs milliers de fichiers qui contiennent une ligne de ce genre:
http_cache = 0
et je voudrais passer cette valeur à 1 donc:
http:_cache = 1
sur tous les fichiers, mais vu le nombre de fichiers je ne vais pas m'amuser à le faire manuellement, vous connaissez une technique, une ligne de commande pour le faire?
J'ai tous les accès au serveur
Et au pire si vous avez une technique pour le faire sous windows je peux les télécharger et réuploader...
http_cache = 0
et je voudrais passer cette valeur à 1 donc:
http:_cache = 1
sur tous les fichiers, mais vu le nombre de fichiers je ne vais pas m'amuser à le faire manuellement, vous connaissez une technique, une ligne de commande pour le faire?
J'ai tous les accès au serveur
http://www.shellunix.com/sed.html
j'ai trouvé quelques explications mais ça me parait "compliqué" je vois pas trop comment construire ma commande dans mon cas.
Personne n'aurait un soft sous windows qui serait capable de remplacer une ligne dans tous les .ini comprit dans un dossier?
j'ai trouvé quelques explications mais ça me parait "compliqué" je vois pas trop comment construire ma commande dans mon cas.
Personne n'aurait un soft sous windows qui serait capable de remplacer une ligne dans tous les .ini comprit dans un dossier?
Hmmm globalement ca, c'est moche et fait à l'arrache....mais bon, ca devrait faire l'affaire.... si tes fichiers font pas plusieurs dizaines megas.... (la je fous tout le fichier en RAM....)
Je ne garantis rien, donc backup tout avant, je n'en serais pas responsable.... !
#!/usr/bin/perl -w
use strict;
my $file = $ARGV[0];
open(READFILE, '<', $file) or die("Cannot open file\n");
my @read = <READFILE>;
close(READFILE);
foreach (@read)
{
$_ =~ s/http_cache\ =\ 0/http_cache\ =\ 1/g;
print $_;
}
open(WRITEFILE, '>', $file) or die("Cannot open file\n");
print WRITEFILE @read;
close(WRITEFILE);
Tu fous ca dans un fichier rename.pl par exemple
Tu mets un petit chmod +x sur rename.pl
et hop
./rename.pl mon_fichier.ini...
Ca recherche EXACTEMENT http_cacheESPACE=ESPACE0
Si tous tes .ini sont dans un meme repertoire, il y a aussi moyen de faire un truc encore plus simple....
Je ne garantis rien, donc backup tout avant, je n'en serais pas responsable.... !
#!/usr/bin/perl -w
use strict;
my $file = $ARGV[0];
open(READFILE, '<', $file) or die("Cannot open file\n");
my @read = <READFILE>;
close(READFILE);
foreach (@read)
{
$_ =~ s/http_cache\ =\ 0/http_cache\ =\ 1/g;
print $_;
}
open(WRITEFILE, '>', $file) or die("Cannot open file\n");
print WRITEFILE @read;
close(WRITEFILE);
Tu fous ca dans un fichier rename.pl par exemple
Tu mets un petit chmod +x sur rename.pl
et hop
./rename.pl mon_fichier.ini...
Ca recherche EXACTEMENT http_cacheESPACE=ESPACE0
Si tous tes .ini sont dans un meme repertoire, il y a aussi moyen de faire un truc encore plus simple....
Ok essaies ca alors :
#!/usr/bin/perl -w
use strict;
opendir(DIRECTORY, ".");
my @files = readdir(DIRECTORY);
foreach (@files)
{
if ($_ ne "." && $_ ne "..")
{
open(READFILE, '<', $_) or die("Cannot open file\n");
my @read = <READFILE>;
close(READFILE);
foreach (@read)
{
$_ =~ s/http_cache\ =\ 0/http_cache\ =\ 1/g;
}
open(WRITEFILE, '>', $_) or die("Cannot open file\n");
print WRITEFILE @read;
close(WRITEFILE);
}
}
Cette fois sans passer d'arguments....
Juste ./rename.pl
Le truc lit chaque fichier dans le repertoire courant dans lequel il est executé...
Puis cherche http_cache = 0
Encore une fois aucune garantie sur son bon fonctionnement
#!/usr/bin/perl -w
use strict;
opendir(DIRECTORY, ".");
my @files = readdir(DIRECTORY);
foreach (@files)
{
if ($_ ne "." && $_ ne "..")
{
open(READFILE, '<', $_) or die("Cannot open file\n");
my @read = <READFILE>;
close(READFILE);
foreach (@read)
{
$_ =~ s/http_cache\ =\ 0/http_cache\ =\ 1/g;
}
open(WRITEFILE, '>', $_) or die("Cannot open file\n");
print WRITEFILE @read;
close(WRITEFILE);
}
}
Cette fois sans passer d'arguments....
Juste ./rename.pl
Le truc lit chaque fichier dans le repertoire courant dans lequel il est executé...
Puis cherche http_cache = 0
Encore une fois aucune garantie sur son bon fonctionnement
JeunZ a écrit:Bon et bien je test ça dès la fin du download de la save (21 mega de .ini quand même).
Merci 1000 fois, je met ce petit script de coté il est très utile
De rien....
C'est plutot impossible d'editer autant de trucs a la main....
Je suis encore la une petite heure si tu as des problemes avec pour debugguer ca...
17 messages • Page 1 sur 2 • 1, 2
Formation recommandée sur ce thème :
Formation Google Analytics : en 2 jours, apprenez comment exploiter l'essentiel des possibilités de l'outil de mesure d'audience de Google. Formation animée par Julien Coquet, expert certifié officiellement par Google Analytics.
Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.
Lectures recommandées sur ce thème :
- Déclarer son fichier sitemap dans le fichier robots.txt
- Article sur le fichier .htaccess
- Comment gérer simplement les sitemaps de plusieurs sites au même endroit
- Configurer des nouveaux moteurs dans Google Analytics
- Sortie de GoogleStats v2.01
- Suite de l'article sur le fichier .htaccess : l'URL rewriting
- AOL pourrait remplacer son partenaire Google par MSN
- The Technology Behind Google
- Sitemaps : protocole commun pour Google, Yahoo et Live Search
- Transfert de fichiers dans Google Talk
- Remplacer C-dédié
- Boutique en ligne téléchargement. Dédié ou pas?
- Sauvegarder un serveur dedié en ligne de commande.
- Fichier .dmp sur un serveur dédié
- executer fichier php en ligne de commande
- écriture dans un fichier txt à la ligne supérieur
- max time execution sur dédié -> télécharger le fichier ph
- Import fichier csv Erreur de syntaxe prsè de ...à la ligne 1
- Retour à la ligne dans un fichier Excel généré en php
- Nouvelle ligne sitemap dans le fichier robots.txt
- transfert de fichier qui ne marche pas sur server dédié OVH
- Discussion dédié , combien de visiteurs suporte votre dédié
- Recupération texte dans boite multiligne, ligne par ligne
- Annuaire-achats en ligne-ventes en ligne-shopping
- [Ligne telephonique]possibilité davoir la ligne hors FT?
Consultez la description détaillée des produits ou services de Google suivants : Google Calendar
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités





le forum