shell中如何实现文本的逐行输出_cshell的cat某一行的信息-程序员宅基地

技术标签: Linux  string  linux  

在Linux的shell脚本中,我们有时候需要输出多行文字,但是不希望一次性输出全部内容,而是希望能一行一行输出。那怎么实现呢?本文介绍了如下两种方法。

准备测试文本

tempFile=shige.txt

cat << EOF >> $tempFile
        春江花月夜          
       作者:张若虚         
春江潮水连海平,海上明月共潮生。
滟滟随波千万里,何处春江无月明!
江流宛转绕芳甸,月照花林皆似霰;
空里流霜不觉飞,汀上白沙看不见。
江天一色无纤尘,皎皎空中孤月轮。
江畔何人初见月?江月何年初照人?
人生代代无穷已,江月年年望相似。
EOF

可保留空格的方法

需要注意的是第4行代码IFS=$'\n',若无该行代码,行内文本的缩进和空格将会丢失。整体的文本输出将无缩进和居中效果。

# 备份IFS
IfsTemp=$IFS
# 若无下行代码,行内文本的缩进和空格将会丢失。
IFS=$'\n'

# 第一种方法
while read line
do
  echo "${line}"
  sleep 0.1
done< $tempFile

# 第二种方法
cat ${tempFile} | while read line
do
  echo "${line}"
  sleep 0.1
done

# 第三种方法
for line in  `cat ${
     tempFile}`
do
  echo "${line}"
  sleep 0.1
done

# 还原IFS
IFS=$IfsTemp

我们还可以改进下面的方法,使IFS的修改只限于while循环。

while IFS=$'\n' read line
do
  echo "${line}"
  sleep 0.1
done< $tempFile

不保留空格的方法

# 第四种方法
fileArray=($(cat "${tempFile}"|xargs))
for item in "${fileArray[@]}"
do
  echo "$item"
  sleep 0.1
done
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/monarch91/article/details/121220014

智能推荐

离线下载安装Microsoft Store中的应用_microsoft sticky notes独立安装包-程序员宅基地

文章浏览阅读3.6w次,点赞14次,收藏49次。下载appx安装包首先用浏览器找到想要下载的Microsoft Store应用的web页面,这里以Microsoft 便笺为例:https://www.microsoft.com/zh-cn/p/microsoft-sticky-notes/9nblggh4qghw?activetab=pivot:overviewtab将上面的链接复制一下打开这个网站:https://store.rg-adguard.net/将上面复制的链接粘贴到搜索栏中(搜索类型使用默认的URL(link))搜索到的结果_microsoft sticky notes独立安装包

动态规划——装箱问题_动态规划装箱问题-程序员宅基地

文章浏览阅读1.7w次,点赞4次,收藏12次。有一个箱子容量为V(正整数,0<=V<=20000),同时有n个物品(0<n<=30),每个物品有一个体积(正整数)。要求n个物品中,任取若干个装入箱内,使箱子的剩余空间为最小。输入描述 Input Description一个整数v,表示箱子容量一个整数n,表示有n个物品接下来n个整数,分别表示这n 个物品的各自体积输出描述 Output Descrip_动态规划装箱问题

Consider defining a bean named ‘shiroFilterFactoryBean‘ in your configuration._consider defining a bean named 'shirofilterfactory-程序员宅基地

文章浏览阅读1.5k次。在Spring Boot整合shiro中,启动程序出现了下面的错误:***************************APPLICATION FAILED TO START***************************Description:Method filterShiroFilterRegistrationBean in org.apache.shiro.spring.config.web.autoconfigure.ShiroWebFilterConfiguration r_consider defining a bean named 'shirofilterfactorybean' in your configuratio

php网站整合ck播放器,wordpress整合ckplayer最新版 wp文章短代码调用ck播放器-程序员宅基地

文章浏览阅读239次。今天翻了翻网上的教程,试试把ckplay整合到wp里面,虽然没什么多大的帮助,但是小试一手,很简单,几分钟就成功了……试试下效果,不错就分享一下吧CKplayer是可以由大家自己diy播放器风格,自己设计logo,load缓冲画面,而且ckplayer集成了对swf和html5的支持,PC机,Iphone,Ipad,Android系统等主流平台都可以使用ckplayer播放视频用的是ckplaye..._ckplayer 视频列表 php

vue日期过滤器-程序员宅基地

文章浏览阅读652次。Vue.filter('dateFormat', function(originVal,fmt) { const dt = new Date(originVal) const y = dt.getFullYear() const m = (dt.getMonth() + 1 + '').padStart(2, '0') const d = (dt.getDate() + '').padStart(2, '0') const hh = (dt.getHours() + '').pad._vue日期过滤器

IMP-00019 IMP-00003 ORA-00001-程序员宅基地

文章浏览阅读5.8k次。IMP-00019 IMP-00003 ORA-00001_imp-00019

随便推点

java——保存书店每日交易记录程序设计-程序员宅基地

文章浏览阅读3.5k次,点赞6次,收藏16次。  Books.java:    这个文件定义了一个Books类。    规定Books类拥有的属性:int id, String name, String publish, double price,int number, double money。    重写了toString()方法,方便打印Books类定义的某个实体的信息。    定义了一个方法:setNum(..._保存书店每日交易记录程序设计

tshark解析本地pcap数据包提取五元组{src_ip,src_port,proto,dst_ip,dst_port}与时间戳,包长_tshark提取包长-程序员宅基地

文章浏览阅读3.8k次。tshark官方文档:https://www.wireshark.org/docs/man-pages/tshark.htmlwireshark官方特征参考:https://www.wireshark.org/docs/dfref/前提需要安装wireshark提取五元组{src_ip,src_port,proto,dst_ip,dst_port}代码如下:tshark -r pcap文件 -T fields -e ip.src -e tcp.srcport -e ip.dst -e tcp._tshark提取包长

Redis主从复制不能实现高可用?Cluster集群来解决_luster keyslot-程序员宅基地

文章浏览阅读1.2k次,点赞6次,收藏2次。Redis Cluster是Redis官方提供的Redis集群功能1.为什么要实现Redis Cluster1.主从复制不能实现高可用2.随着公司发展,用户数量增多,并发越来越多,业务需要更高的QPS,而主从复制中单机的QPS可能无法满足业务需求3.数据量的考虑,现有服务器内存不能满足业务数据的需要时,单纯向服务器添加内存不能达到要求,此时需要考虑分布式需求,把数据分布到不同服务器上4.网络流量需求:业务的流量已经超过服务器的网卡的上限值,可以考虑使用分布式来进行分流5.离线计算,需要中间_luster keyslot

腾讯,干掉 Redis 项目,正式开源、太牛逼啦!-程序员宅基地

文章浏览阅读58次。点击上方“Java基基”,选择“设为星标”做积极的人,而不是积极废人!源码精品专栏原创 | Java 2020超神之路,很肝~中文详细注释的开源项目RPC 框架 Dubbo 源码解析网..._最新开源,替代redis

计算几何(三条高线长求三角形面积) - Height to Area - UVA 10522_已知三角形三条高线的长度,如何求这个三角形的面积-程序员宅基地

文章浏览阅读748次。计算几何(三条高线长求三角形面积) - Height to Area - UVA 10522题意:给定三角形的三条高的长度,计算三角形的面积。给定三角形的三条高的长度,计算三角形的面积。给定三角形的三条高的长度,计算三角形的面积。输入:多组测试数据,多组测试数据,多组测试数据,首行包括一个正整数T,表示不合法数据的组数,首行包括一个正整数T,表示不合法数据的组数,首行包括一个正整数T,表示不合法数据的组数,当不合法输入的数量达到T时,停止输入。当不合法输入的数量达到T时,停止输入。当不合法输入的_已知三角形三条高线的长度,如何求这个三角形的面积

org.apache.catalina.core.AprLifecycleListener.lifecycleEvent The APR based Apache Tomcat Native libr-程序员宅基地

文章浏览阅读1.5w次。在安装好jdk与tomcat之后,会在tomcat启动log信息里提示:18-Feb-2020 19:23:43.283 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent The APR based Apache Tomcat Native library which allows optimal ..._org.apache.catalina.core.aprlifecyclelistener.lifecycleevent the apache tomc

推荐文章

热门文章

相关标签