echo命令

选项:
-n 不要输出衍生的新行
-e 启用反斜线转义解释
-E 禁用反斜线转义解释(默认)

如果使用
-e选项,则可以使用如下转义序列: \ 反斜线 \a 警告(BEL) \b 反斜线 \c 不产生进一步输出 \e 转义 \f 换页 \n 新行 \r 换行字符 \t 水平制表 \v 垂直制表 \0NNN 八进制值表示的字节NNN(1到3个数字) \xHH 十六进制值表示的字节NNN(1到2个数字)
#!/bin/bash
#上述行必须添加
#!代表这是一个可执行脚本;
#!后面是命令的路径名,指定解释脚本命令的程序;
#代表这是一个bash脚本,通过bash命令实现;

#!/bin/awk
#代表这是一个awk脚本,通过awk命令实现;

#定义变量的时候,“=”左右千万不要有空格啊
scripts_arg="-a -h"
scripts_num=9

#if后面有空格;[]中括号内空格隔开;if最后有分号;
#脚本是否运行在root权限下;
if [ `id -u` -ne 0 ];
then
    echo "Must be root to run this scripts."
    exit
fi

#比较安全的方法,清空文件内容
cat /dev/null > messages

# -n参数表示字符串是否非空;
#下述代表脚本的参数是否为空;
if [ -n "$1" ];
then
    echo $1
    lines=$1
else
    echo "Is empty"
fi


#显示换行
echo -e "OK! \n" # -e 开启转义
echo "It is a test"
echo -e "OK! \c" # -e 开启转义 \c 不换行

#参数个数  2种方式都可以
echo -e $#    输出参数个数
echo -e "$#"  输出参数个数
echo '$#'    输出$#
echo -e $scripts_arg
echo -e "$scripts_arg"
echo -e $scripts_num

if [ $# -ne $scripts_num ];
then
    echo -e "Love"
    exit
fi
exit
1.显示结果定向至文件
echo "It is a test" > myfile
 

2.原样输出字符串,不进行转义或取变量(用单引号)
echo '$name\"'
输出结果:
$name\"
 
3.显示命令执行结果
  echo `date`
结果将显示当前日期

Thu Jul 24 10:08:46 CST 2014
4.显示转义字符

echo "\"It is a test\""
结果将是:
"It is a test"
同样,双引号也可以省略

 

posted on 2020-06-17 11:03  裸睡的猪  阅读(270)  评论(0编辑  收藏  举报