我正在学习基本的unix shell脚本。我正在尝试使用here中的代码来编写我的用户名,但它无效。
代码是:
#
# Script to print user information who currently login , current date & time
#
clear
echo "Hello $USER"
echo "Today is \c ";date
echo "Number of user login : \c" ; who | wc -l
echo "Calendar"
cal
exit 0
我尝试$whoami
代替$user
,但仍然没有显示我的用户名。这可能是什么问题?我在Ubuntu中使用vim编辑器。
答案 0 :(得分:4)
$USER
无效,请尝试$LOGNAME
。如果您已经了解了命令替换,那么您可以使用$(whoami)
或$(id -n -u)
。 Ref \c
(代表启用反斜杠转义的解释),否则echo
中的 -e
将无效。
echo -e "Today is \c ";date
您似乎想要阻止echo
引入的尾随新行字符。另一种实现此目的的方法是添加-n
。那么您不需要-e
和\c
。
echo -n "Today is "; date
答案 1 :(得分:2)