Como eu faço este script imprimir várias caixas?

0

Eu tenho este script que imprime uma moldura de caixa com sinais Asterisk, e eu preciso fazer isso para que o script imprima várias caixas em si. Como eu posso fazer isso?

#!/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
    
por MargusL 29.05.2018 / 08:43

1 resposta

0

Se você quiser apenas o número de caixas como entrada, é apenas:

#!/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

Não tenho certeza se isso é o que você quer, porque se você escreveu seu código, provavelmente deveria ter descoberto isso.

    
por 29.05.2018 / 08:57