文档章节

Shell脚本入门-7

Avner
 Avner
发布于 03/10 23:53
字数 670
阅读 9
收藏 2

Shell echo命令

Shell 的 echo 指令与 PHP 的 echo 指令类似,都是用于字符串的输出。命令格式:echo string

您可以使用echo实现更复杂的输出格式控制。

1.显示普通字符串: echo "It is a test" ,这里的双引号完全可以省略,

以下命令与上面实例效果一致:echo It is a test

2.显示转义字符: echo "\"It is a test\"" , 结果将是:"It is a test" , 同样,双引号也可以省略。

 备注: \" \": 转移一对""符号。

3.显示变量:read 命令从标准输入中读取一行,并把输入行的每个字段的值指定给 shell 变量

#!/bin/sh
read name 
echo "$name It is a test"

以上代码保存为 test.sh,name 接收标准输入的变量,结果将是:
[root@www ~]# sh test.sh
OK                     #标准输入
OK It is a test        #输出

4.显示换行:注意: echo -e

echo -e "OK! \n" # -e 开启转义
echo "It it a test"

输出结果:
OK!
               -- 备注:(有一空行)
It it a test

5.显示不换行: 注意: echo -e

#!/bin/sh
echo -e "OK! \c" # -e 开启转义 \c 不换行
echo "It is a test"

输出结果:
OK! It is a test

6.显示结果定向至文件: echo "It is a test" > myfile; (第一次接触这个操作)

7.原样输出字符串,不进行转义或取变量(用单引号):

echo '$name\"'
输出结果:
$name\"

8.显示命令执行结果:

echo `date`

注意: 这里使用的是反引号 `, 而不是单引号 '。
结果将显示当前日期
2018年 3月11日 星期日 11时57分18秒 CST

备注1: echo输出的字符串总结:

===================================================================
             能否引用变量     |  能否引用转移符      |  能否引用文本格式符(如:换行符、制表符)

单引号  |           否           |             否             |                             否

双引号  |           能           |             能             |                             能

无引号  |           能           |             能             |                             否                          
===================================================================

备注2.read命令相关:

read 命令一个一个词组地接收输入的参数,每个词组需要使用空格进行分隔;如果输入的词组个数大于需要的参数个数,则多出的词组将被作为整体为最后一个参数接收。

测试文件 test.sh 代码如下:

read firstStr secondStr
echo "第一个参数:$firstStr; 第二个参数:$secondStr"

执行测试:
$ sh test.sh 
一 二 三 四
第一个参数:一; 第二个参数:二 三 四

实例, 文件 test.sh:

read -p "请输入一段文字:" -n 6 -t 5 -s password
echo "\npassword is $password"

参数说明:

  •  -p 输入提示文字
  •  -n 输入字符长度限制(达到6位,自动结束)
  •  -t 输入限时
  •  -s 隐藏输入内容
$ sh test.sh 
请输入一段文字:
password is asdfgh

 

© 著作权归作者所有

共有 人打赏支持
Avner
粉丝 8
博文 53
码字总数 52234
作品 0
杭州
程序员
Linux shell 程序设计1——安装及入门

1、什么是shell? shell是linux内核的“壳”,是用户和内核的桥梁。它类似于windows下的命令提示符,将用户输入的命令解释给内核执行,并返回给用户结果。与windows命令提示符不同的是,she...

宅蓝三木
2014/04/24
0
0
shell脚本从入门到复杂 其八(函数)

linux shell 可以用户定义函数,然后在shell脚本中可以随便调用。 Shell的函数存在于内存,而不是硬盘文件,所以速度很快,另外,Shell还能对函数进行预处理,所以函数的启动比脚本更快。 注...

断臂人
05/09
0
0
[ Linux运维学习 ] 路径及实战项目合集

我们知道运维工程师(Operations)最基本的职责就是负责服务的稳定性并确保整个服务的高可用性,同时不断优化系统架构、提升部署效率、优化资源利用率,确保服务可以7*24H不间断地为用户提供服...

实验楼
2017/11/15
0
0
Shell脚本编程学习入门:Shell编程基础

Shell脚本编程学习入门是本文要介绍的内容,我们可以使用任意一种文字编辑器,比如gedit、kedit、emacs、vi等来编写shell脚本,它必须以如下行开始(必须放在文件的第一行): #!/bin/sh......

技术小阿哥
2017/11/12
0
0
Shell脚本编程30分钟入门

什么是Shell脚本 示例 看个例子吧: #!/bin/shcd ~mkdir shell_tutcd shell_tut for ((i=0; i<10; i++)); do done 示例解释 第1行:指定脚本解释器,这里是用/bin/sh做解释器的 第2行:切换到...

quanpower
2014/03/23
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

redis数据结构

1.数据结构 1.1 简单动态字符串 sds struct sdshdr { int len; // buf数组中记录的字符串长度 int free; //bug数组未使用的长度 char buf[]; //字节数组,用于保存字符串...

Funcy1122
39分钟前
0
0
通过ip获取真实地址

package util;import com.alibaba.fastjson.JSON;import com.alibaba.fastjson.JSONObject;import org.apache.commons.lang3.StringUtils;import org.apache.http.HttpResponse;......

lifes77
今天
3
0
解决nginx 出现 413 Request Entity Too Large的问题

php.ini 文件已经设置了附件大小和表单提交大小为128M upload_max_filesize = 128M post_max_size = 128M 然而nginx还是报 413 Request Entity Too Large 错怎么办 打开/etc/nginx/sites-av...

Marhal
今天
1
0
Vue 服务端渲染(SSR)

Vue 服务端渲染(SSR) 什么是服务端渲染,简单理解是将组件或页面通过服务器生成html字符串,再发送到浏览器,最后将静态标记"混合"为客户端上完全交互的应用程序。于传统的SPA(单页应用)...

Jack088
今天
1
0
Java 计算日期间天数与日期推算等操作

package com.yh.emmm.pattern;import java.time.LocalDate;/** * 计算两个日期之间的天数 * * @author 枫茗丿love */public class CountDaysUtils { /** * 两...

yh500
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部