Portál AbcLinuxu, 12. listopadu 2025 02:25
#!/bin/bash
array=()
volba=0
until [ "$volba" = "" ]; do
echo -n "Pridej soubor/adresar: "; read volba
array[${#array[*]}]=$volba
done
echo
echo "Vypis soubor/adresar [0]"
echo "Odeber soubor/adresar [1]"
echo -n "Akce: "; read akce
case $akce in
0)
for ((i=0;i < ${#array[@]};i++ )); do
echo ${array[$i]}
done
;;
1)
for ((i=0;i < ${#array[@]};i++ )); do
rm -r ${array[$i]} 2>/dev/null
done
;;
*)
exit 1
;;
esac
exit 0
Treba takto..
NN
read -a a a načtení souboru do pole a=($(<soubor)).
Pavel Lukáš Martin Robin ...potom by mělo jít vybrat, který řádek umazat, zase to nabídne uživateli seznam a on zvolí, co smazat. Nechtěl jsem to dělat zbytečně přes > soubor, ale kdy by to šlo udělat přes pole..
#!/bin/bash
array=($(cat test))
echo ${array[@]}
echo
echo "Pridat [0]"
echo "Odebrat [1]"
echo -n "Akce: "; read akce
case $akce in
0)
echo -n "Soubor/adresar: "; read volba
array[${#array[*]}]=$volba
echo $volba >> test
;;
1)
echo -n "Index: "; read index
unset array[$index]
echo ${array[@]} > test
;;
esac
NN
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.