Wie bringe ich dieses Skript dazu, mehrere Boxen auszudrucken?

Wie bringe ich dieses Skript dazu, mehrere Boxen auszudrucken?

Ich habe dieses Skript, das einen Kastenrahmen mit Asterisk-Zeichen ausdruckt, und ich muss es so einrichten, dass das Skript mehrere Kästchen untereinander ausdruckt. Wie kann ich das machen?

#!/bin/bash
#
echo -n "Please enter the amount of lines: "
read lines
echo -n "Please enter the amount of *: "
read sign
for((i = 1; i <= $lines; i++))
do
  echo -n "$i "
  if [ $i -eq 1 -o $i -eq $lines ]; then
  for((j = 1; j <= $sign; j++))
  do
    echo -n "* "
  done

  else
    echo -n "* "
    for((j = 2; j < $sign; j++))
    do
      echo -n "  "
    done
    echo -n "* "
  fi
  echo
done
#end

Antwort1

Wenn Sie als Eingabe nur die Anzahl der Felder wünschen, lautet die Eingabe einfach:

#!/bin/bash
#
echo -n "Please enter the amount of lines: "
read lines
echo -n "Please enter the amount of *: "
read sign
echo -n "Please enter the amount of boxes: "
read boxes
for ((h = 1; h <= $boxes; h++))
do
    for((i = 1; i <= $lines; i++))
    do
        echo -n "$i "
        if [ $i -eq 1 -o $i -eq $lines ]; then
            for((j = 1; j <= $sign; j++))
            do
                echo -n "* "
            done
        else
            echo -n "* "
            for((j = 2; j < $sign; j++))
            do
                echo -n "  "
            done
            echo -n "* "
        fi
        echo
    done
done
#end

Allerdings bin ich nicht sicher, ob das das ist, was Sie möchten, denn wenn Sie Ihren Code geschrieben haben, hätten Sie es wahrscheinlich schon herausfinden müssen.

verwandte Informationen