shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Copiar arquivo para as pastas Home


From: Felipe Kellermann
Subject: Re: [shell-script] Copiar arquivo para as pastas Home
Date: Wed, 1 Jan 1997 12:03:46 -0200 (BRST)

On Wed, 14 Apr 2004 2:30pm  -0000, marceloconterato wrote:

> Queria um script ou um comando para copiar um arquivo, digamos
> teste.txt, para dentro de todas as pastas homes dos usuários.
> Não adiantaria usar o diretório Skel, visto que, todos os usuário já
> estão criados, bem como, suas respectivas pastas homes.

$ for i in /home/*; { install /tmp/arquivo.txt -o ${i##*/} $i; }

Talvez tu precise de alguma coisa mais elaborada.  Por exemplo, teus
usuários não usam necessariamente `/home/', ou tu ainda pode querer
especificar um grupo:

while read user
do
        set $user
        # Aqui, 3 (uid) 4 (gid) 6 (home)
        install -o $3 -g $4 /tmp/teste.txt $6
done < /etc/passwd

Se quiser limitar, por exemplo, só para usuários (que usualmente começam
em uid 1000), só bota uma comparação antes do install, por exemplo:

        [ $3 -ge $USERUIDMIN ] && install (...)

Tu tem a possibilidade ainda de fazer por grupos, ao invés de testar pelo
uid tu testa pela gid.  Tu tem ainda a possibilidade ainda de pegar mais
as informações do `group' também, se for preciso.

Dica:  O `install' não é um aplicativo padrão, mas é quase um padrão por
uso.  Está presente em quase todas versões de sistemas modernos (BSDs ou
nos sistemas GNU, por exemplo) apesar de sua origem ser antiga, 4.2BSD.
Mas tu pode substituir esse `install -g -o' por um `cp' e um `chown'.

-- 
Felipe Kellermann


reply via email to

[Prev in Thread] Current Thread [Next in Thread]