|
| find Fra : Esben Skov Pedersen |
Dato : 27-03-02 20:37 |
|
Hvordan kan man pipe indholden fra find over i chown. Jeg har kigget lidt
på -exec fra find manualen. Jeg kan bare ikke rigtig gennemskue det.
Jeg kommer frem til noget lignende det her:
find . -group ep48567 -exec chown esben {}
så får jeg at vide; manglende parameter til -exec
med venlig hilsen Esben
| |
Kent Friis (27-03-2002)
| Kommentar Fra : Kent Friis |
Dato : 27-03-02 22:07 |
|
Den Wed, 27 Mar 2002 20:37:16 +0100 skrev Esben Skov Pedersen:
>Hvordan kan man pipe indholden fra find over i chown. Jeg har kigget lidt
>på -exec fra find manualen. Jeg kan bare ikke rigtig gennemskue det.
>Jeg kommer frem til noget lignende det her:
>
>find . -group ep48567 -exec chown esben {}
>
>så får jeg at vide; manglende parameter til -exec
find . -group ep48567 | xargs chown esben
Glem -exec.
Mvh
Kent
--
Advarsel: ny e-mail adresse - med risiko for at mails går tabt.
Den gamle adresse virker stadig, men bliver primært checket i
arbejdstiden.
| |
Thorbjørn Ravn Ander~ (27-03-2002)
| Kommentar Fra : Thorbjørn Ravn Ander~ |
Dato : 27-03-02 22:14 |
|
leeloo@phreaker.net (Kent Friis) writes:
> find . -group ep48567 | xargs chown esben
>
> Glem -exec.
Hvis der er filnavn med mellemrum, duer den her ikke. Så er det noget
med -print0 til find og et flag jeg ikke lige kan huske til xargs.
--
Thorbjørn Ravn Andersen
http://unixsnedkeren.dk - Unix, Java, Web, Netværk, Århus
| |
Kent Friis (27-03-2002)
| Kommentar Fra : Kent Friis |
Dato : 27-03-02 22:20 |
|
Den 27 Mar 2002 22:13:38 +0100 skrev Thorbjørn Ravn Andersen:
>leeloo@phreaker.net (Kent Friis) writes:
>
>> find . -group ep48567 | xargs chown esben
>>
>> Glem -exec.
>
>Hvis der er filnavn med mellemrum, duer den her ikke. Så er det noget
>med -print0 til find og et flag jeg ikke lige kan huske til xargs.
xargs -0
Mvh
Kent
--
Advarsel: ny e-mail adresse - med risiko for at mails går tabt.
Den gamle adresse virker stadig, men bliver primært checket i
arbejdstiden.
| |
Martin Moller Peders~ (28-03-2002)
| Kommentar Fra : Martin Moller Peders~ |
Dato : 28-03-02 00:18 |
|
In <a7tc8m$14v$1@sunsite.dk> leeloo@phreaker.net (Kent Friis) writes:
>Den Wed, 27 Mar 2002 20:37:16 +0100 skrev Esben Skov Pedersen:
>>Hvordan kan man pipe indholden fra find over i chown. Jeg har kigget lidt
>>på -exec fra find manualen. Jeg kan bare ikke rigtig gennemskue det.
>>Jeg kommer frem til noget lignende det her:
>>
>>find . -group ep48567 -exec chown esben {}
>>
>>så får jeg at vide; manglende parameter til -exec
>find . -group ep48567 | xargs chown esben
>Glem -exec.
Det vil ikke virke med filer, hvis navn indeholder et " ".
Hvis man har gnu-udgaver af find og xargs installeret kan man bruge:
find . -group ep48567 -print0 | xargs --null chown esben
| |
Niels Andersen (28-03-2002)
| Kommentar Fra : Niels Andersen |
Dato : 28-03-02 13:23 |
|
Martin Moller Pedersen wrote in <a7tjvn$902$1@news.net.uni-c.dk>:
> Det vil ikke virke med filer, hvis navn indeholder et " ".
> Hvis man har gnu-udgaver af find og xargs installeret kan man bruge:
> find . -group ep48567 -print0 | xargs --null chown esben
Så vidt jeg husker, at netop det givet mig lidt problemer. Ville det ikke
være en god ide at quote filnavnet? Mellemrum osv. bliver mig bekendt ikke
escapet...
Hvad med:
find . -group ep48567 -print0 | xargs --null -i chown esben '{}'
(-i betyder (bla.), at det, der skal sættes ind, bliver ikke bare sat til
sidst, men bliver sat ind i stedet for{}.)
--
Mvh.
Niels Andersen
Linux 2.4.18 - Debian 3.0
| |
Kent Friis (28-03-2002)
| Kommentar Fra : Kent Friis |
Dato : 28-03-02 13:55 |
|
Den Thu, 28 Mar 2002 13:22:34 +0100 skrev Niels Andersen:
>Martin Moller Pedersen wrote in <a7tjvn$902$1@news.net.uni-c.dk>:
>> Det vil ikke virke med filer, hvis navn indeholder et " ".
>> Hvis man har gnu-udgaver af find og xargs installeret kan man bruge:
>> find . -group ep48567 -print0 | xargs --null chown esben
>
>Så vidt jeg husker, at netop det givet mig lidt problemer. Ville det ikke
>være en god ide at quote filnavnet? Mellemrum osv. bliver mig bekendt ikke
>escapet...
Shell'en bliver ikke blandet ind i det, xargs kalder chown direkte.
Derfor er det ikke nødvendigt at quote filnavnet (eller rettere, hvis
du kan få quote-tegnene igennem til xargs, vil det faktisk ikke virke).
>Hvad med:
>
>find . -group ep48567 -print0 | xargs --null -i chown esben '{}'
>
>(-i betyder (bla.), at det, der skal sættes ind, bliver ikke bare sat til
>sidst, men bliver sat ind i stedet for{}.)
Det bør give samme resultat. Dine '' tegn fjerner shell'en, så xargs ser
bare {}, og dda de står sidst, bliver resultatet det samme.
Mvh
Kent
--
Advarsel: ny e-mail adresse - med risiko for at mails går tabt.
Den gamle adresse virker stadig, men bliver primært checket i
arbejdstiden.
| |
Steen Suder (27-03-2002)
| Kommentar Fra : Steen Suder |
Dato : 27-03-02 22:11 |
|
Esben Skov Pedersen wrote:
>
> Hvordan kan man pipe indholden fra find over i chown. Jeg har kigget lidt
> på -exec fra find manualen. Jeg kan bare ikke rigtig gennemskue det.
> Jeg kommer frem til noget lignende det her:
>
> find . -group ep48567 -exec chown esben {}
>
> så får jeg at vide; manglende parameter til -exec
IIRC mangler du \; til sidst.
Altså:
find . -group ep48567 -exec chown esben {} \;
--
Steen Suder "We reject kings, presidents and voting.
http://www.suder.dk/ We believe in rough consensus and running
code."
ICQ UIN: 4133803
| |
|
|