Comment puis-je ve dir la même structure?

  • delta32
  • Newbie
  • Newbie
  • No Avatar
  • Inscription: Jan 30, 2006
  • Messages: 11
  • Status: Offline

Message Mars 15th, 2006, 4:58 pm

J ai une machine solaris et ai presque migré vers Linux.
mais le problème est, j'ai besoin de créer exactement la structure de répertoire que je HVE dans la machine Solaris pour la plupart de mes scripts de travail.
Trouver un répertoire et ses sous-répertoire et ses sous-répertoire et de créer entre eux est une tâche fastidieuse.

Pourriez quelqu'un jeter quelque lumière sur ce, comment puis-je ve dir la structure exacte de l'autre machine.
  • Anonymous
  • Bot
  • No Avatar
  • Inscription: 25 Feb 2008
  • Messages: ?
  • Loc: Ozzuland
  • Status: Online

Message Mars 15th, 2006, 4:58 pm

  • this213
  • Guru
  • Guru
  • Avatar de l’utilisateur
  • Inscription: Mar 01, 2004
  • Messages: 1242
  • Loc: ./
  • Status: Offline

Message Mars 18th, 2006, 12:45 am

Ma première question serait: Pourquoi vos scripts en utilisant les chemins dur?

Dès le départ, il semble que vous êtes, soit essayer de faire quelque chose de mal, ou que vous avez fait une erreur, avant et maintenant, vous avez à le corriger. Quel est exactement ce que vous essayez de faire double emploi? Les données des annuaires, les répertoires des utilisateurs, ou quoi?

Non pour vous encourager à faire quoi que ce soit stupide (comme Solaris copier vos binaires Linux sur votre machine et essayer de les exécuter), mais peut vous suffit de le connecter par le biais de NFS et de copier les dossiers de plus?
http://www.disabo.com
  • humbletech99
  • Proficient
  • Proficient
  • Avatar de l’utilisateur
  • Inscription: Mar 09, 2006
  • Messages: 300
  • Status: Offline

Message Mars 23rd, 2006, 6:41 am

de changer vos scripts, utilisation env variables comme vous êtes censé...
  • delta32
  • Newbie
  • Newbie
  • No Avatar
  • Inscription: Jan 30, 2006
  • Messages: 11
  • Status: Offline

Message Mars 25th, 2006, 3:00 am

noo!, je ne suis pas fais nythin indésirables niether ai fait.
Je voulais juste la même dirs ve i HVE dans ma machine à une autre ici...

comme
/

dos1 dos2 dos3 dir4

dir11 dir12 dir21 dir22 dir31 dir32 dir 41 dir42


Comment i dir HVE le même arbre dans mon autre machine.?
Je ne veux pas que les fichiers de la dir. Jus de l'arbre!

Hope suis claire.?
  • this213
  • Guru
  • Guru
  • Avatar de l’utilisateur
  • Inscription: Mar 01, 2004
  • Messages: 1242
  • Loc: ./
  • Status: Offline

Message Mars 25th, 2006, 3:45 am

Oh, bien qu'un peu différent: Pourquoi n'avez-vous pas dit? ;)

Le moyen le plus rapide je ne connais serait d'écrire un script perl, quelque chose comme cela devrait le faire:
Code: [ Select ]
#!/usr/bin/perl
my $directory = "/path/to/directory";
open(FILE,">outfile.txt");
&read_directory($directory);
close FILE;

sub read_directory {
    my $directory = shift;

    opendir DIR, $directory or die "Cannot open Directory $!";
    my @files = readdir DIR;
    
    foreach my $el (@files){
        if( $el eq "." || $el eq ".." || !-d $directory.'/'.$el ){
            next;
        }
        &read_directory("$directory/$el");
        print FILE "$directory/$el\n";
    }
    closedir DIR;
}

exit;
  1. #!/usr/bin/perl
  2. my $directory = "/path/to/directory";
  3. open(FILE,">outfile.txt");
  4. &read_directory($directory);
  5. close FILE;
  6. sub read_directory {
  7.     my $directory = shift;
  8.     opendir DIR, $directory or die "Cannot open Directory $!";
  9.     my @files = readdir DIR;
  10.     
  11.     foreach my $el (@files){
  12.         if( $el eq "." || $el eq ".." || !-d $directory.'/'.$el ){
  13.             next;
  14.         }
  15.         &read_directory("$directory/$el");
  16.         print FILE "$directory/$el\n";
  17.     }
  18.     closedir DIR;
  19. }
  20. exit;

Cela créera un fichier texte nommé outfile.txt qui répertorie toutes vos répertoires avec leurs chemins complets. Sur le nouveau serveur, vous pouvez écrire un script perl pour lire l'ensemble de ceux et de créer des répertoires pour chacune d'elles:
Code: [ Select ]
#!/usr/bin/perl
open(FILE,"outfile.txt");
my @data = <FILE>;
close FILE;
chomp(@data);
foreach my $el (@data);
    if( $el ne '' ){
        `mkdir $el`;
    }
}
exit;
  1. #!/usr/bin/perl
  2. open(FILE,"outfile.txt");
  3. my @data = <FILE>;
  4. close FILE;
  5. chomp(@data);
  6. foreach my $el (@data);
  7.     if( $el ne '' ){
  8.         `mkdir $el`;
  9.     }
  10. }
  11. exit;
http://www.disabo.com
  • humbletech99
  • Proficient
  • Proficient
  • Avatar de l’utilisateur
  • Inscription: Mar 09, 2006
  • Messages: 300
  • Status: Offline

Message Mars 25th, 2006, 5:20 am

Je suppose que vous ne sont pas intéressés par le contenu des répertoires, etc, sinon, Youd devons essayer de lien vers l'emplacement correct je pense....
  • delta32
  • Newbie
  • Newbie
  • No Avatar
  • Inscription: Jan 30, 2006
  • Messages: 11
  • Status: Offline

Message Mars 30th, 2006, 6:00 am

grâce humble...

rechercher. -type d -> ne me les dirs

merci pour la réponse ..

Afficher de l'information

  • Total des messages de ce sujet: 7 messages
  • Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 109 invités
  • Vous ne pouvez pas poster de nouveaux sujets
  • Vous ne pouvez pas répondre aux sujets
  • Vous ne pouvez pas éditer vos messages
  • Vous ne pouvez pas supprimer vos messages
  • Vous ne pouvez pas joindre des fichiers
 
 

© 2011 Unmelted, LLC. Ozzu® est une marque déposée de Unmelted, LLC