Portál AbcLinuxu, 12. května 2025 12:33
Řešení dotazu:
bash
, /usr/bin/printf
(printf(1)
) je dobrým nástrojem pro formátovaný výstup, tak Vás to třeba nasměruje.
#!/bin/bash IN_FIRST_VAR="`echo -e \"Douglas\nPepa\nMr. Franta\nKubrt\nHlustmisihak\"`" IN_SECOND_VAR="`echo -e \"Adams\nMinarik\nMucha\nGumička\nNor Phdr.\nJmeno nemaje\"`" FIRST_WIDTH=30 OldIFS=$IFS IFS=' ' declare -a FIRST_VAR=($IN_FIRST_VAR) declare -a SECOND_VAR=($IN_SECOND_VAR) IFS=$OldIFS FrstCnt=${#FIRST_VAR[@]} SndCnt=${#SECOND_VAR[@]} if [ $FrstCnt -gt $SndCnt ]; then Cnt=$FrstCnt else Cnt=$SndCnt fi i=0 while [ $i -lt $Cnt ]; do str=${FIRST_VAR[$i]} while [ ${#str} -lt ${FIRST_WIDTH} ]; do str="$str " done echo -e "$str | ${SECOND_VAR[$i]}" let i+=1 done
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.