Прежде всего, у меня есть только один опыт работы с bash, поэтому мой вопрос может быть очень легким для большинства из вас. Вот мой вопрос: 2 кода, показанные ниже, выполняют одну и ту же работу, однако, благодаря I/O, в одном из них мне не нужно использовать команду echo
. Я не понимаю, почему. Есть ли кто-нибудь, кто может мне помочь? Заранее спасибо.Bash standard I/O
#!/bin/bash
# make_page ----- A script to produce an HTML file------
title="System information for"
cat <<- _EOF_
<HTML>
<HEAD>
<TITLE>
$title $HOSTNAME
</TITLE>
</HEAD>
<BODY>
<H1>$title $HOSTNAME</H1>
</BODY>
</HTML>
_EOF_
второй, где я должен использовать эхо:
#!/bin/bash
# make_page - A script to produce an HTML file
echo "<HTML>"
echo "<HEAD>"
echo " <TITLE>"
echo " The title of your page"
echo " </TITLE>"
echo "</HEAD>"
echo ""
echo "<BODY>"
echo " Your page content goes here."
echo "</BODY>"
echo "</HTML>"
Первый документ [здесь] (http://en.wikipedia.org/wiki/Here_document). – devnull
http://www.tldp.org/LDP/abs/html/here-docs.html – KBart
http://www.gnu.org/software/bash/manual/bashref.html#Here-Documents – konsolebox