输出带有转义字符的内容

  单独一个echo表示一个换行

  使用echo输出时,每一条命令之后,都默认加一个换行;要想取消默认的换行,需要加 -n 参数。

#!/bin/bash
#文件名:test.sh echo "aaaaaaaaaaa"
echo "bbbbbbbbbbb"
echo -n "ccccccccccc"
echo "ddddddddddd"

  运行脚本:

ubuntu@ubuntu:~$ ./test.sh
aaaaaaaaaaa
bbbbbbbbbbb
cccccccccccddddddddddd
ubuntu@ubuntu:~$

  

  使用双引号括起来的内容中有转义字符时,在添加参数 -e 之后才会被转义,否则会原样输出。

#!/bin/bash
#文件名:test.sh echo "hello\n world"
echo -e "hello\n world"

  运行脚本:

ubuntu@ubuntu:~$ ./test.sh
hello\n world
hello
world
ubuntu@ubuntu:~$

  

读取用户输入:

  方式一:

#!/bin/bash
#文件名:test.sh echo -n "please input your name and age:"
read name age
echo "welcome $name, your age is $age"

  方式二:

#!/bin/bash
#文件名:test.sh read -p "please input your name and age:" name age
echo "welcome $name, your age is $age"

  读入的内容会自动保存到变量中去,可以直接使用变量获取输入的值。

  执行上面两个脚本,结果都为:

ubuntu@ubuntu:~$ ./test.sh
please input your name:beyond 10
welcome beyond, your age is 10
ubuntu@ubuntu:~$

  

改变字体颜色:

  以 \e[前景颜色;背景颜色m  开头,中间为内容,然后以 \e[0m结束,0m表示将颜色恢复为默认的颜色,如果不加0m,则之后的所有输出都将使用前面的设置。

  其中使用字母m来分隔转义字符和内容。同时输出的时候,因为有转义字符,所以要加-e参数

  \e可以使用八进制的\033代替。

  颜色表:

字体颜色 黑30 红31 绿32 棕33 蓝34 紫35 青36 白37
背景颜色 黑40 红41 绿42 棕43 蓝44 紫45 青46 白47
#!/bin/bash
#文件名:test.sh echo -e "\e[32;40m this is test \e[0m";
echo -e "\e[33;47m this is test \e[0m"; echo -e "\033[32;40m hello world \033[0m";
echo -e "\033[33;47m hello world \033[0m";

  运行结果:

   

shell脚本--输入与输出的更多相关文章

  1. Shell编程学习---第五篇:Shell的输入和输出

    在shell脚本中,可以用几种不同的方式读入数据:可以使用标准输入—缺省为键盘,或 者指定一个文件作为输入.对于输出也是一样:如果不指定某个文件作为输出,标准输出总 是和终端屏幕相关联.如果所使用命令 ...

  2. shell脚本按当前日期输出日志

    shell脚本基本技能是设置变量,输出信息.如下: sh脚本输出到控制台 将以上脚本保存到test.sh脚本文件中,并赋予可执行权限:sudo chmod +x test.sh 执行脚本:bash t ...

  3. Java实践-远程调用Shell脚本并获取输出信息

    1.添加依赖 <dependency> <groupId>ch.ethz.ganymed</groupId> <artifactId>ganymed-s ...

  4. shell脚本监控Flume输出到HDFS上文件合法性

    在使用flume中发现由于网络.HDFS等其它原因,使得经过Flume收集到HDFS上得日志有一些异常,表现为: 1.有未关闭的文件:以tmp(默认)结尾的文件.加入存到HDFS上得文件应该是gz压缩 ...

  5. Shell脚本——cat/EOF输出多行

    在某些场合,可能我们需要在脚本中生成一个临时文件,然后把该文件作为最终文件放入目录中.(可参考ntop.spec文件)这样有几个好处,其中之一就是临时文件不是唯一的,可以通过变量赋值,也可根据不同的判 ...

  6. shell的输入和输出

    1.echo    echo [option] string -e 解析转义字符 -n 回车不换行,linux系统默认回车换行 转移字符 \c \t \f \n #!/bin/bash #echo e ...

  7. shell脚本(3)-格式化输出

    一个程序需要有0个或以上的输入,一个或更多输出 一.echo语法 1.功能:将内容输出到默认显示设备. echo命令功能在显示器上显示一段文字,一般提到提示的作用 2.语法:echo[-ne][字符串 ...

  8. Shell 基础 -- 输入、输出重定向

    一.文件描述符 文件描述符是一个非负的整数,Linux 中每个运行中的程序(进程),都有一些与之关联的文件描述符,你可以使用文件描述符来访问打开的文件或设备.在标准 I/O 库中,与文件描述符对应的是 ...

  9. Oralce SQLPlus 以及shell脚本中spool输出到文件时的格式化输出

    http://blog.csdn.net/gyanp/article/details/7903056 1) 格式调整有以下参数 set echo on/off                     ...

随机推荐

  1. oracle的order by排序中空字符串处理方法

    1.缺省处理 Oracle在Order by 时缺省认为null是最大值,所以如果是ASC升序则排在最后,DESC降序则排在最前 2.使用nvl函数 nvl函数可以将输入参数为空时转换为一特定值,如 ...

  2. map && multimap

    map map 的意思是映射.用法一般是     map<char, int>mp 按照我的理解,map 类似于一个高级的数组.前面的数据类型 char 相当于下脚标,而数组元素的值就对应 ...

  3. PAT A1026 Table Tennis (30 分)——队列

    A table tennis club has N tables available to the public. The tables are numbered from 1 to N. For a ...

  4. AliOS-Things linkkitapp解读

    app-example-linkkitapp是AliOS-Things提供的设备联网并且和阿里云IOT平台数据交互的一个示例程序: 1:application_start()程序在app_entry. ...

  5. 开源HTTP解析器---http-parser和fast-http

    由于项目中遇到需要发送http请求,然后再解析接收到的响应.大概在网上搜索了一下,有两个比较不错,分别是http-parser和fast-http. http-parser是由C编写的工具:fast- ...

  6. 使用jdom进行xml解析,网络抓包

    最近再做一个项目,使用到了jdom进行xml解析,为了方便记忆,现在保存在这里 package bboss; import java.io.FileInputStream; import java.i ...

  7. c语言学习5

    break 和 continue之间的区别: 在1000人中,募捐100000元,当达到10万元后结束   break 跳出当前循环,即  是终止循环,continue结束本次循环,不终止循环 #in ...

  8. vba总结用法 及案例图

  9. 外部Jenkins调用容器中Slave配置实践

    1.Jenkins配置 实现动态生成的Slave节点并调用,解决构建项目出现slave节点任务堵塞或者是slave宕机问题.容器平台采用openshift. 参考配置文档:https://blog.c ...

  10. C#创建自己的扩展方法

    C#可以创建自己的扩展方法Extension Method: 参考这篇<判断是否为空然后赋值>http://www.cnblogs.com/insus/p/8004097.html 里,前 ...