[BSD] csh es scp -r

gabor at zahemszky.hu gabor at zahemszky.hu
2013. Május. 8., Sze, 07:36:10 CEST


Szia!

2013-05-08 01:29 időpontban Gabor HALASZ ezt írta:

Szerintem ebben az időpontban aludjál inkább ;-)

> Helo!
>
> Van egy directory strukturam:
>
> /src/dir/host0/a/file
> /src/dir/host0/b/file
> /src/dir/host1/a/file
> /src/dir/host2/a/file
> ...
>
> Ezt szeretnem szetkuldeni a host-onkent. Ezzel probalkoztam:
>
> bash: scp -r /src/dir/host0/* host0:/dst/dir/srchost/
> csh:  scp -r /src/dir/host0/\* host0:/dst/dir/srchost/
>
> Bash alatt mukodik, Csh alatt /src/dir/host0/*:  No such file or
> directory lett.

No idáig értem, ez teljesen korrekt viselkedés. Amit nem értek, hogy 
miért
takarod a *-ot a csh alatt, és miért nem bash alatt? (Szerintem ha a 
két
shell-ben a fent vázolt parancsok elé odateszel egy echo-t, akkor 
látszik,
hogy teljesen más parancsok futnak le: a bash megkapja az összes 
alkönyvtár
nevét, a csh viszont host0/* -ot kap.)

> Erdekes modon forditva mukodik Csh alatt is:
>
> scp -r host0:/dst/dir/srchost/\* /src/dir/host0/

Ez is teljesen OK, mert előbb eltakarod a csh elől, majd a *-ot 
tartalmazó
fájlneveket host0-n kell értelmezni, és a túloldalon elvégezni a 
globbingot

> A kommunikacio iranyat nem tudom megforditani, mindenkeppen az
> srchost-on kell futnia az scp-nek, annak van kulcsa a tobbi gephez. 
> Az
> scp -r /src/dir/host0 host0:/dst/dir/srchost/ is mukodik, de akkor 
> nem
> az jon letre, aminek kellene.
> Valami otlet?

Szerintem az az ötlet, hogy csh alatt se takard el a *-ot.

De nyugodtan magyarázd el, ha valamit nagyon félreértek. (Vagy 
magyarázat helyett
futtas script-et, és benne a két - bash és csh alatti - scp-t, aztán a 
typescript
fájlt csatold a következő levélhez, hátha világosabb, hogy mi nem OK.)

Zahy < Gabor at Zahemszky dot HU >


További információk a(z) BSD levelezőlistáról