To be more general, you should escape the *, and then it gets passed
to the remote scp, which is smart enough to handle it (it actually uses
the shell on the remote machine to do the globbing.)

If you're using older shells (real bourne shell, csh, etc.) then the
unescaped * will cause an error (unless you 'set noglob' in csh).
Bash is smart enough to realize that if no local globbing works, that
it should just be passed on to the underlying program, for instance:

[EMAIL PROTECTED] mrp]$ echo frobble*
frobble*
[EMAIL PROTECTED] mrp]$ echo f*
fern.jpg ffjuser30 flash forAudrey forte4j fun
[EMAIL PROTECTED] mrp]$ csh
[EMAIL PROTECTED] ~]$ echo frobble*
echo: No match.
[EMAIL PROTECTED] ~]$ set noglob
[EMAIL PROTECTED] ~]$ echo frobble*
frobble*
[EMAIL PROTECTED] ~]$

Thus endeth the unix history lesson :-)

-- Mitch

On Monday, Nov 3, 2003, at 08:37 US/Pacific, [EMAIL PROTECTED] wrote:

i've always wondered about this...

if i have a bunch of files on a remote host beginning with "backup", i
can copy them to the local host using:

scp [EMAIL PROTECTED]:backup* .

and it works.  but why?  doesn't the shell get to "*" first?  i'd
understand this working:

scp '[EMAIL PROTECTED]:backup*' .

but why does scp see the asterisk in the unquoted version?

pete

--
GPG Instructions: http://www.dirac.org/linux/gpg
GPG Fingerprint: B9F1 6CF3 47C4 7CD8 D33E 70A9 A3B9 1945 67EA 951D
_______________________________________________
vox-tech mailing list
[EMAIL PROTECTED]
http://lists.lugod.org/mailman/listinfo/vox-tech


_______________________________________________ vox-tech mailing list [EMAIL PROTECTED] http://lists.lugod.org/mailman/listinfo/vox-tech

Reply via email to