Portál AbcLinuxu, 9. května 2025 06:22
for na_co_jsem_narazil in /home/Plocha/slozka/*
Děkuji za každou radu. Kamil.
Řešení dotazu:
1. Proměnné prostředí jsou ve funkci defaultně sdílené se zbytkem skriptu, takže všechny instance vaší funkce sdílejí jednu proměnnou na_co_jsem_narazil
. Má-li být proměnná lokální, je potřeba ji deklarovat pomocí local
:
funkce () { local na_co_jsem_narazil for na_co_jsem_narazil in *; do ... done }
2. Pokud v té funkci opravdu máte
for na_co_jsem_narazil in /home/Plocha/slozka/*; do ... done
tak se v každé instanci prochází cyklem stejný seznam souborů, takže obsahuje-li aspoň jeden adresář, nic jiného než zacyklení se ani stát nemůže. Patrně jste spíš chtěl něco jako
cd /home/Plocha/slozka/* funkce
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.