在shell编程中遇到一些需要换行的情况,在这里记录一下,后续还有
1-脚本代码太长需要换行
这个情况是指我们某一些代码,或者指令需要输入的参数太多太长,不易于阅读与维护
在结尾加上\即可
# 之前的代码(现实生活中不会这么用,这里是举个例子假设有个长命令)
ls -ll /home && cd shell && ls -ll
# 之后的代码 (得到的结果一样)
ls -ll /home && \
cd shell && \
ls -ll #最后一行不要\了
需要注意
- 每个换行\后面不能有空格,必须直接跟回车。
- 最后一行参数不要有换行符。
2-echo输出给用户看的命令太长需要换行
需要输出的结果太长了,需要换行显示更加美观
加参数 -e 使用换行符\n
echo "这句话真的太长了,怎么显示成2行呢?这样就可以啦"
这句话真的太长了,怎么显示成2行呢?这样就可以啦
echo -e "这句话真的太长了,怎么显示成2行呢?\n这样就可以啦"
这句话真的太长了,怎么显示成2行呢?
这样就可以啦
3-read -p提取用户输入的时候提示太长需要换行
read -p 一般需要加一段提示语来提示用户,有时候这个提示语太长了不好看,并且希望让用户输入的命令也另起一行,这样更加直观 需要做如下操作
加$ 表示解析所有字符(因为\默认是转义的,加了$就不转了)
在需要换行的地方增加 \x0a
# 之前的代码
read -p '请选择需要进行的运算:(1-加法 2-减法 3-乘法 4-除法)' rule
# 输出的结果如下,并且不会另起一行给用户来输入
请选择需要进行的运算:(1-加法 2-减法 3-乘法 4-除法)
# 之后的代码
read -p $'请选择需要进行的运算:\x0a (1-加法 2-减法 3-乘法 4-除法) \x0a' rule
# 输出的结果如下,用户需要在第三行输入命令
请选择需要进行的运算:
(1-加法 2-减法 3-乘法 4-除法)
或者下面的方法
#!/bin/bash
read -p "Please enter a message : `echo $'\n > '`" message
# 这样会另起一行并且增加> 提示符让用户输入
Please enter a message :
>
参考文档:
- https://www.jb51.net/article/275691.htm
- https://www.jb51.net/article/275539.htm
- http://main.net.cn/faq/test-maintain/shell/how-do-i-add-a-line-break-for-read-command/
总结
到此这篇关于shell脚本换行问题的文章就介绍到这了,更多相关shell脚本换行问题内容请搜索aitechtogether.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持aitechtogether.com!