Portál AbcLinuxu, 29. prosince 2025 23:41
find: paths must precede expression Usage: find [path...] [expression](toho, co je ve funkci). Proc ale chodi ten, co je tam natvrdo (v nastaveni default prav) a ten v te funkci ne, kdyz syntax je temer totozna? Kdyz si necham vypsat tu promennou hledej a opisu ji do prikazoveho radku, tak se provede
Prosim pomoze
#!/bin/sh
# Definice funkce pro zmenu prav...
function prava()
{
if [ $2 == "r" ]
then opravneni="7750"
fi
if [ $2 == "rw" ]
then opravneni="7770"
fi
if [ $2 == "" ]
then break
fi
hledej="find $1 -print0 | xargs -0 chmod $opravneni"
pwd #kontrola ze zoufalstvi
echo $hledej #kontrola ze zoufalstvi
$hledej
}
# Nastaveni dokumentu...
cesta="/mnt/hdc1/samba/uzivatele/pepa"
# Nastaveni default prav...
cd $cesta
find ./dokumenty -print0 | xargs -0 chmod 7700
# Nastaveni prav danych adresaru...
cd dokumenty
prava ./Adresa_dopis r
eval $hledejAle není-li důvod cpát to do proměnné, tak prostě
find "$1" -print0 | xargs -0 chmod "$opravneni"
#!/bin/sh
# Definice funkce pro zmenu prav...
function prava()
{
if [ $2 == "r" ]
then opravneni="7750"
fi
if [ $2 == "rw" ]
then opravneni="7770"
fi
if [ $2 == "" ]
then break
fi
find "$1" -print0 | xargs -0 chmod $opravneni
# bez zoufalych kontrol
}
# Nastaveni dokumentu...
cesta="/mnt/hdc1/samba/uzivatele/pepa"
# Nastaveni default prav...
cd $cesta
find ./dokumenty -print0 | xargs -0 chmod 7700
# Nastaveni prav danych adresaru...
cd dokumenty
prava ./Adresa_dopis rZkus popřemýšlet, proč tohle funguje a to tvoje ne. A maly hint pro zoufalce eval $hledej
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.