echo参数

来源:互联网 发布:top域名注册3元便宜 编辑:程序博客网 时间:2024/05/01 16:07

echo -n 不换行输出

$echo -n "123"
$echo "456"
最终输出
123456
而不是
123
456
 
echo -e 处理特殊字符
若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出:
\a 发出警告声;
\b 删除前一个字符;
\c 最后不加上换行符号;
\f 换行但光标仍旧停留在原来的位置;
\n 换行且光标移至行首;
\r 光标移至行首,但不换行;
\t 插入tab;
\v 与\f相同;
\\ 插入\字符;
\nnn 插入nnn(八进制)所代表的ASCII字符;

$echo -e "a\bdddd"
dddd
 
$echo -e "a\adddd" //输出同时会发出报警声音
adddd
$echo -e "a\ndddd" //自动换行
a
dddd

 

 

echo -n "$1" | sed 's/ //g' | wc -c
echo -n "$1" 是不换行打印, sed 's/ //g' 是把全部空格去掉,
wc -c 是打印印出位元组数目, 如果wc -c 在前, sed 的命令是多余的,
例子如是

#! /bin/bash


if  [ -n "$1" ] ; then
     echo -n "$1" | sed 's/ //g' | wc -c
fi
user@minix-nb:~$ cat bb.sh
#! /bin/bash

if [ -n "$1" ] ; then
    echo -n "$1" | wc -c | sed 's/ //g'
fi
user@minix-nb:~$ chmod +x aa.sh bb.sh
user@minix-nb:~$ ./aa.sh "abcde f"
6
user@minix-nb:~$ ./bb.sh "abcde f"
7
user@minix-nb:~$
user@minix-nb:~$ ./bb.sh "abcde     f"
11
user@minix-nb:~$ ./aa.sh "abcdea     f"
6
user@minix-nb:~$
user@minix-nb:~$ ./aa.sh "abcdef"
6
user@minix-nb:~$ ./bb.sh "abcdef"
6

在看脚本的时候遇到不懂的就找了几个例子。

原创粉丝点击