kopiera fil till flera användare med ett kommando?

Tråden skapades och har fått 6 svar. Det senaste inlägget skrevs .
1
  • Medlem
  • Höganäs
  • 2011-04-18 10:19

Har en Ubuntu-server där jag vill byta ut en fil i samtliga användares public_html-mapp.
Kan jag göra detta med något smidig kommando?

Naiv fråga: Funkar inte wildcards för detta?, ex :

sudo cp fil.txt /home/*/public_html/fil.txt 

Nåt sånt här borde funka, spara i ett skript och kör.

Du måste såklart ändra variabeln FILEN till sökvägen på den fil du vill kopiera.

#!/bin/bash
UHOME="/home"
FILEN="/home/kalle/public_html/filattkopieras.txt"
 # get list of all users
_USERS="$(awk -F':' '{ if ( $3 >= 500 ) print $1 }' /etc/passwd)"
for u in $_USERS
do
   _dir="${UHOME}/${u}/public_html"
   if [ -d "$_dir" ]
   then
       /bin/cp "$FILEN" "$_dir"
      chown $(id -un $u):$(id -gn $u) "$_dir/${FILE}"
   fi
done
  • Medlem
  • Höganäs
  • 2011-04-18 13:17

Suveränt!
Tack, funkar utmärkt.

/M

  • Medlem
  • Stockholm
  • 2011-04-18 13:48
Ursprungligen av Micke F:

Har en Ubuntu-server där jag vill byta ut en fil i samtliga användares public_html-mapp.
Kan jag göra detta med något smidig kommando?

…eller föredrar man som jag grafiska gränssnitt, så ta en titt på:

FileDistributor

Ursprungligen av Torkel:

…eller föredrar man som jag grafiska gränssnitt, så ta en titt på:

FileDistributor

Funkar det i *nix-miljö?

  • Medlem
  • Stockholm
  • 2011-04-18 15:31
Ursprungligen av keptang:

Funkar det i *nix-miljö?

Nej,…tänkte inte på det…bara för MacOSX O:-)

Jag tror det fungerar om du använder zsh som shell.

1
Bevaka tråden