Portál AbcLinuxu, 9. května 2025 03:00
Řešení dotazu:
foo=("prvek1" "prvek2" "prvek3") atd..jak to mám uložit? Jako takto?
echo "foo=(\"prvek1\" \"prvek2\" \"prvek3\")" > /tmp/array.tmpdík
#!/bin/bash foo=('prvek1' 'prvek2' 'prvek3') #write echo "${foo[@]}" > save.tmp #read' bar=( $( cat save.tmp ) ) # nebo # bar=($(<save.tmp)) #print echo -e "Count: ${#bar[@]}\nValues: ${bar[@]}"Pokud to obsahuje mezery ale ne nový řádek (nebo jiný zvolený znak):
foo=('prvek1' 'prvek2' 'prvek s mezerou 3') #write storeIFS="$IFS" IFS=$'\n' echo "${foo[*]}" > save.tmp IFS="$storeIFS" #read storeIFS="$IFS" IFS=$'\n' bar=( $( cat save.tmp ) ) # nebo # bar=($(<save.tmp)) IFS="$storeIFS" #print echo -e "Count: ${#bar[@]}\nValues: ${bar[@]}"
uložiť to ako bash skriptnapř. pomocí declare -p
declare -p foo > foo.shco se používá pro variables? To stejný?
VAR="neco tady je" declare -p VAR > foo.shDík
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.