输出带有转义字符的内容

  单独一个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. day10,11练习

    1.执行Python脚本两种方式? 略 2.简述位.字节关系? 8位一个字节 3.简述ASCII,Unicode,utf-8,gbk关系? ascii unicode utf8 4.请写出李杰分别用u ...

  2. Maven快照机制(SNAPSHOT)

    文章转自 http://www.cnblogs.com/EasonJim/p/6852840.html 以下引用自https://ayayui.gitbooks.io/tutorialspoint-m ...

  3. 在Windows中安装PostgreSQL

    在Windows中安装PostgreSQL 虽然PostgreSQL是为类UNIX平台开发的,但它却是可以移植的.从7.1版本开始,PostgreSQL可以编译安装和作为一个PostgreSQL服务器 ...

  4. 如何在一台机器上部署多个tomcat

    1,在/usr/local/下部署两个tomcat7. 2,修改/etc/profile文件,加入下面内容 vi  /etc/profile export JAVA_HOME=/usr/java/jd ...

  5. 16-(基础入门篇)GPRS(Air202)关于多个文件中的变量调用和定时器

    https://www.cnblogs.com/yangfengwu/p/9968405.html 因为自己看到好多问多个文件调用的,感觉这个应该说一说 对了大家有没有知道这个是干什么的 大家有没有看 ...

  6. IntelliJ IDEA 常用设置 (二)

    一. 代码提示和补充功能有一个特性:区分大小写. 区分大小写的情况是这样的:比如我们在 Java 代码文件中输入 stringBuffer IntelliJ IDEA 是不会帮我们提示或是代码补充的, ...

  7. highcharts中数据列点击事件

    Highcharts.chart('container', { xAxis: { categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul ...

  8. sublime text3作为php开发IDE

    phpstorm开发有时候太占内存,会发生卡顿.虽然还是更喜欢用这个IDE哈哈. 一个也很强大的编辑器sublime text3,作为偶尔的替代也很给力.这个内存占用会小不少. 官网下载sublime ...

  9. 在lua中创建字段安全的对象

    lua萌新,刚刚学习和使用不到一个月.有不对的地方,还望各路大神不吝赐教. lua中可以用table来模拟对象,但table是可以任意增加键值的.在对象模拟中,暂且也叫它为字段(field)吧.如果在 ...

  10. sql语句 update

    UPDATE ban_group AS A SET  NAME ='锅炉三班' FROM     hr_employee AS b  WHERE     b.job_no = '1394' AND A ...