Script Frage

Bash, Shell, PHP, Python, Perl, CGI
schmide
Posts: 17
Joined: 2004-09-03 16:39

Script Frage

Post by schmide »

Hallo Leute,

ich möchte von einem Ordner alle Unterordner verschieben bekomme es aber leider nicht gebacken.
Kann mir bitte einer helfen.

Code: Select all

#!/bin/bash
MYDOMAIN=`ls /var/www/1`

SITES=`ls /var/www/vhosts/${MYDOMAIN}/statistics/webstat/current/`

for ${MYDOMAIN}
do
      cp -r /var/www/vhosts/${MYDOMAIN}/statistics/webstat/current/${SITES} /var/www/vhosts/${MYDOMAIN}/statistics/webstat/
done
Ich bekomme aber den Fehler:
./test.sh: line 10: `${MYDOMAIN}': not a valid identifier

Gruß
Schmide
aubergine
Posts: 471
Joined: 2005-09-10 17:52
Location: Frankfurt am Main

Re: Script Frage

Post by aubergine »

Was gibt "ls /var/www/1" aus und welchen Sinn macht diese Ausgabe im Zusammenhang mit "SITES=`ls /var/www/vhosts/${MYDOMAIN}/statistics/webstat/current/`"

ls ist garantiert nicht dass was du willst.
Ferner macht die for-Anweisung überhaupt gar keinen Sinn.

Alles in Allem kann ich hier überhaupt keine korrekte Zeile finden, insofern ich hab den Sinn verstanden der erfüllt werden soll
schmide
Posts: 17
Joined: 2004-09-03 16:39

Re: Script Frage

Post by schmide »

Hallo aubergine,

"ls /var/www/1"
gibt folgendes aus.
dom1.de
dom2.de
...

da ich es für mehrere Domains benötige und ich es nicht über ein statisches File einlesen möchte.

Unter Sites gibts dann folgende Ordner:
2007-11
2007-12
...

Die Ordner hängen dann vom Erstellungsdatum der Dom ab was ja unterschiedlich ist.

Gruß
Schmide
User avatar
daemotron
Administrator
Administrator
Posts: 2639
Joined: 2004-01-21 17:44

Re: Script Frage

Post by daemotron »

Code: Select all

#!/bin/sh

MYDOMAIN=`ls /var/www/1`

for i in $MYDOMAIN; do
  SITES=`ls /var/www/vhosts/${i}/statistics/webstat/current/`
  for j in $SITES; do
    cp -r /var/www/vhosts/${i}/statistics/webstat/current/${j} /var/www/vhosts/${i}/statistics/webstat/
  done
done
schmide
Posts: 17
Joined: 2004-09-03 16:39

Re: Script Frage

Post by schmide »

Hallo jfreund,

super danke es hat funktioniert.

Gruß
Schmide