Каково надлежащее добавление отступа для сценариев удара?

Каково надлежащее добавление отступа для сценария удара? Как обезьяна Java/C++ я неукоснительно форматирую свой код. Но кажется, что Нельзя форматировать этот код:

#! /bin/bash

if [ $# = 0 ]
then
        # there was no arguments => just do to standard output.
        echo "there are no parameters"
else
cat << EOF
==========================================================
==========================================================
==========================================================
==========================================================
DESCRIPTION:

$1
----------------------------------------------------------

EOF
fi

При расположении с отступом это не распознает EOF и если Вы просто нес отступом EOF (путание) его печатаете расположенный с отступом.

Q: Что надлежащее располагает с отступом для сценариев удара?

6
задан Jon Seigel 16 April 2010 в 17:44
поделиться

4 ответа

С bash (3. 2 по крайней мере) и ksh (о других не знаю) вы можете отступать от here-документов, используя <<-, и ведущие табуляции будут удалены (не пробелы, только табуляции), например,

if [...]; then
    cat <<-EOF
        some text
    EOF
fi
20
ответ дан 8 December 2019 в 04:08
поделиться

да, вы можете «сделать отступ», используя << - (см. Страницу руководства bash в здесь документах)

if [ $# = 0 ]
then
        # there was no arguments => just do to standard output.
        echo "there are no parameters"
else
    cat <<-EOF
    ==========================================================
    ==========================================================
    ==========================================================
    ==========================================================
    DESCRIPTION:

    $1
    ----------------------------------------------------------
    EOF
fi
4
ответ дан 8 December 2019 в 04:08
поделиться

Это не проблема с отступом в bash, это проблема с файлом. Метка, которую вы указываете после << , то есть EOF , должна появляться одна в строке, без начальных или конечных пробелов.

Для самого файла здесь он используется как типизированный, включая отступы.

2
ответ дан 8 December 2019 в 04:08
поделиться

До сих пор много хороших ответов. Вот просвет:

$ make 2>&1 | tee filetokeepitin.txt 

позволит вам наблюдать за прокручиванием выходных данных.

-121--1004010-

Я наконец получил его, представил его 13 раз отклонен по каким бы то ни было причинам, 14 «судья» принял мой ответ, вот он:

import java.io.BufferedInputStream;
import java.util.Scanner;

public class HashmatWarrior {

    public static void main(String args[]) {
        Scanner stdin = new Scanner(new BufferedInputStream(System.in));
        while (stdin.hasNext()) {
            System.out.println(Math.abs(stdin.nextLong() - stdin.nextLong()));
        }
    }
}
-121--2572801-

Mouviciel правильный.

Если требуется сохранить отступы, можно поместить здешний текст в отдельный файл. Тем не менее, вам придется справиться с заменой самостоятельно.

0
ответ дан 8 December 2019 в 04:08
поделиться
Другие вопросы по тегам:

Похожие вопросы: