Bash命令echo不会运行

时间:2016-01-24 13:48:50

标签: bash echo

我开始学习bash脚本。我试图从教程升级脚本以接受某些变量的用户输入。输入有效但我想在输入变量之前插入echo。我尝试了不同的echo变体(使用-e,-n,没有任何,......)但是当我运行脚本时,echo从不显示。我做错了什么?

#! /bin/bash

# make_page - A script to produce an HTML file

# input page's title
echo -e "Hi, type the title: /c "
read TITLE

###### Constants

AUTHOR=$USER
CREATED_ON=$(date +"%x %r %Z")

##### Main

cat <<- _EOF_
    <HTML>
    <HEAD>
        <TITLE>
        $TITLE
        </TITLE>
        <meta name="author" content="$AUTHOR">
        <meta name="created" content="$CREATED_ON">
    </HEAD>

    <BODY>
    <H1>$TITLE</H1>
    </BODY>
    </HTML>
_EOF_

1 个答案:

答案 0 :(得分:0)

当你跑步时:

make_page > page.html

您告诉bash将任何输出重定向到文件“page.html”。这就是你没有看到提示的原因。

你应该做的是改变这一行:

cat <<- _EOF_

by:

cat <<- _EOF_ > page.html

这样只会将“cat”的结果重定向到文件。