shell中如何实现文本的逐行输出_农民工老王的博客-程序员秘密_shell 输出大段文字

技术标签: Linux  string  linux  

在Linux的shell脚本中,我们有时候需要输出多行文字,但是不希望一次性输出全部内容,而是希望能一行一行输出。那怎么实现呢?本文介绍了如下两种方法。
需要注意的是第18行代码不可或缺,若无该行代码,行内文本的缩进和空格将会丢失。整体的文本输出将无缩进和居中效果。

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

result=`cat ${
     tempFile}`
# 若无下行代码,行内文本的缩进和空格将会丢失。
IFS=$'\n'

# 第一种方法
for line in  $result
do
  echo "${line}"
  sleep 0.1
done

# 第二种方法
echo "${result}" | while read line
do
  echo "${line}"
  sleep 0.1
done
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/monarch91/article/details/121220014

智能推荐

vue-13-swiper组件的使用_weixin_30415801的博客-程序员秘密

vue-13-swiper是一个滑动库, 非常丰富的滑动样式, 轮播图等https://www.swiper.com.cnhttps://github.com/surmon-china/vue-awesome-swiper1, 基本1.1) 安装npm install vue-awesome-swiper --save1.2) 全局引用css 单独引入, 在swiper3 中干掉了...

python多自变量拟合函数,在python中拟合变量Sinc函数_知乎树洞的博客-程序员秘密

I would like to fit a sinc function to a bunch of datalines.Using a gauss the fit itself does work but the data does not seem to be sufficiently gaussian, so I figured I could just switch to sinc..I j...

CSDN网络课-Python异步编程详解_sinat_18131557的博客-程序员秘密

内容来源于CSDN网络课程1线程与进程线程包含进程,一个线程可以有一个或多个进程。单核CPU在多个任务中切换,也可是实现多进程的程序。线程不安全:变量共享的,造成资源的争抢,造成数据异常。为了避免线程不安全,Python使用了GIL全局解释锁,给每个进程一把锁,启动线程先加锁,结束线程释放锁。解决了安全问题,但是性能有影响。复查程序分类:CPU密集型和IO密集型对于游戏这种CPU密集型程...

PHP最佳实践指南(中英对照)_weixin_33832340的博客-程序员秘密

原文链接A short, practical guide for common and confusing PHP tasks一个简短的实用指南,用于常见的和令人困惑的PHP任务Last revised &amp; maintainers 最后修改和维护人员This document was last reviewed on January 25, 2019. It was last ...

HDOJ2051_Bitset_逸川先生的博客-程序员秘密

Problem DescriptionGive you a number on base ten,you should output it on base two.(0 InputFor each case there is a postive number n on base ten, end of file.OutputFor each case output a numb

随便推点

Config配置中心搭建_center(config)#怎么进入_甜的柠檬酸的博客-程序员秘密

1、首先是用git或者svn,数据都可以,作为配置文件的保存地方。这里使用git。2、在git仓库中创建一个配置文件。内容,例如如下:spring: profiles: actives: -dev---spring: profiles: dev #开发环境 application: name: com-syzw-dev---spring...

jQuery 判断一个 {} 对象是否为空_jq判断map为空_搬运Gong的博客-程序员秘密

let map = {};$('.explain').each(function() { var _id = $(this).attr("id"); var _value = $(this).val(); if (_value !='') { map[_id] = _value; }});let checkEmpty = $.isEmptyObject...

vue项目改图标_vue使用自定义icon图标的方法_weixin_39766071的博客-程序员秘密

首先因为elementUI提供的icon太少了,所有自己找找有没有矢量图可以补充的,尝试多种方法,觉得下面方法简单易懂,分享给大家效果图:推荐使用阿里爸爸矢量图标管理,iconfont使用方法 登录账号,找到需要的图标加入购物车然后添加到项目再然后下载代码到本地下载代码文件然后解压出现这列表打开HTML文件,引用方法教程补充我人的坑,之前想着在style标签里@import "",结果一直报错,试...

简单解释一下SDK、JDK、JRE、JVM之间的区别以及联系_C_TestMG的博客-程序员秘密

一、JDK与JRE简单的说:JDK是面向开发人员使用的SDK,它提供了Java的开发环境和运行环境。SDK是Software Development Kit 一般指软件开发包,可以包括函数库、编译程序等。JDK就是Java Development KitJRE是Java Runtime Enviroment是指Java的运行环境,是面向Java程序的使用者,而不是开发者。如果...

react-pdf 将pdf文件转为图片,用于页面展示_可缺不可滥的博客-程序员秘密

1.安装 react-pdfyarn add react-pdf或npm install react-pdf --save2.转换pdf为图片的组件/* eslint-disable */import { useState, useEffect, useRef } from "react";var pdfjsLib = require("pdfjs-dist/es5/build/pdf.js");import "pdfjs-dist/es5/build/pdf.worker.entry";

换行符与转义字符_换行符转义_hwb_java的博客-程序员秘密

因为操作系统的不同,换行符表示字符也不同:Mac:\rUnix/Linux:\nWindows:\r\n有一个项目是前端用富文本编辑器编辑好页面,然后后台建立文件副本,副本被其他应用调用,展现在windows电脑的浏览器上或者安卓或ios设备上。涉及到文本换行的时候我就直接用的&quot;\r\n&quot;。不过有一个方法是System.getProperty(&quot;line.separator&quot;)。...

推荐文章

热门文章

相关标签