2016-06-10 7 views
0

Для присваивания, я пытаюсь сделать скрипт, который будет печатать треугольник, который выглядит следующим образом:Создание формы с помощью сценария оболочки Linux

+ 
| \ 
| \ 
| \ 
| \ 
+----- 

Вот мой код в VIM:

echo'+ 
    | \ 
    | \ 
    | \ 
    | \ 
    +----- ' 

Однако, вместо того, чтобы, что в качестве выхода при запуске сценария, он выводит как:

VI output issue

Может ли кто-нибудь сказать мне, что я делаю неправильно?

+0

У вас действительно нет пробела после 'echo'? Вы должны получить сообщение об ошибке. – Barmar

ответ

0

Попробуйте

#!/bin/bash 
echo ' 
    + 
    | \ 
    | \ 
    | \ 
    | \ 
    +----- ' 

просто запустить его на следующей строке, так как вам нужно пространство перед «+»

+0

О, Боже мой. Это всегда мелочи, которые меня убивают в программировании. Это сделал трюк! Благодаря! – sodhosdh

0

Как ваш выход был объединен с 3-х строк?
Я думаю, что ваша исходная команда с пробелом после echo и двойных кавычек:

echo "+ 
    | \ 
    | \ 
    | \ 
    | \ 
    +----- " 

А теперь обратите внимание на последний символ каждой строки. Когда последним символом является \, следующая строка добавляется к текущей строке.
Убедитесь, что каждая строка заканчивается пробелом (или используйте одинарные кавычки).

Смежные вопросы