我开始学习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_
答案 0 :(得分:0)
当你跑步时:
make_page > page.html
您告诉bash将任何输出重定向到文件“page.html”。这就是你没有看到提示的原因。
你应该做的是改变这一行:
cat <<- _EOF_
by:
cat <<- _EOF_ > page.html
这样只会将“cat”的结果重定向到文件。