0.前言
    本文总结如何使用echo命令向文件中写入内容,例如使用echo指令覆盖文件内容,使用echo指令向文件追加内容,使用echo指令往文件中追加制表符。
    echo向文件中输出内容的基本方法是使用IO重定向指令——“>”,默认情况下echo输出到标准输出中,使用>指令可重定向输出到文件中。
 
1.echo指令基本用法
【2】输入指令获得帮助
    sudo echo --help
        返回内容如下
  1. 用法:echo [短选项]... [字符串]...
  2. 或:echo 长选项
  3. 将 STRING 回显到标准输出。
  4. -n 不尾随换行符
  5. -e 启用解释反斜杠的转义功能
  6. -E 禁用解释反斜杠的转义功能(默认)
  7. --help 显示此帮助信息并退出
  8. --version 显示版本信息并退出
  9. 若-e 可用,则以下序列即可识别:
  10. \\    反斜杠
  11. \a    响铃声
  12. \b    退格
  13. \c    不再产生新的输出
  14. \e    转义符
  15. \f    换页
  16. \n    新行
  17. \r    回车
  18. \t    水平制表符
  19. \v    竖直制表符
  20. \0NNN   字节数以八进制数 NNN (1至3位)表示
  21. \xHH    字节数以十六进制数 HH (1至2位)表示
 
2.覆盖文件内容
    【示例脚本】test.sh
    使用>指令覆盖文件原内容并重新输入内容,若文件不存在则创建文件。
#!/bin/bash
echo "Raspberry" > test.txt
    【操作过程】
# 修改权限,脚本可执行
chmod u+x test.sh    
./test.sh
    【文件内容】
Raspberry
 
3.追加文件内容
    【示例脚本】test.sh
    使用>>指令向文件追加内容,原内容将保存。
  1. #!/bin/bash
  2. echo "Raspberry" > test.txt
  3. echo "Intel Galileo" >> test.txt
    【操作过程】
# 修改权限,脚本可执行
chmod u+x test.sh    
./test.sh
    【文件内容】
    请注意echo指令默认在行尾增加回车(\n),所以此处显示两行。
Raspberry
Intel Galileo
 
4.输入转移字符
    使用-e参数可启用转移字符。下面通过echo指令向文件写入一个JSON数据包。如果不熟悉JSON格式请参考——【前端学习——JSON格式详解
    【示例脚本】test-json.sh
  1. #!/bin/bash
  2. echo -e "{" > test-json.txt
  3. echo -e "\t\"name\":\"xukai871105\"" >> test-json.txt
  4. echo -e "}" >> test-json.txt
    【说明】
    此处用到了两处转移字符,\t制表符,\"双引号。
    【操作过程】
# 修改权限,脚本可执行
chmod u+x test-json.sh    
./test-json.sh  
    【文件内容】
{
     "name":"xukai871105"
}
5.使用变量
    上面的脚本中3处使用了文件名称test-json.txt,如果文件名称需要修改那么就需要修改3处,这样的操作显得麻烦些,为了简化操作可以使用变量简化脚本。
    【示例脚本】test-json.sh
  1. #!/bin/bash
  2. FILE="test-json.txt"
  3. echo -e "{" > $FILE
  4. echo -e "\t\"name\":\"xukai871105\"" >> $FILE
  5. echo -e "}" >> $FILE
    【操作过程】
# 修改权限,脚本可执行
chmod u+x test-json.sh    
./test-json.sh  
    【文件内容】
{
     "name":"xukai871105"
}

使用echo命令向文件写入内容的更多相关文章

  1. Linux 如何使用echo指令向文件写入内容

    0.前言     本文总结如何使用echo命令向文件中写入内容,例如使用echo指令覆盖文件内容,使用echo指令向文件追加内容,使用echo指令往文件中追加制表符.     echo向文件中输出内容 ...

  2. Linux学习笔记——如何使用echo指令向文件写入内容

    0.前言     本文总结如何使用echo命令向文件中写入内容,例如使用echo指令覆盖文件内容,使用echo指令向文件追加内容,使用echo指令往文件中追加制表符.     echo向文件中输出内容 ...

  3. linux使用echo指令向文件写入内容

    echo "aaa">test.sh 该指令会覆盖文件原内容,如果文件不存在,则创建 echo "aaa">>test.sh 追加文件内容 h ...

  4. Linux_脚本——使用echo从一个文件写入还有一个文件末尾

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/svitter/article/details/30980923 echo $(cat 你须要的文件) ...

  5. Ubuntu文件写入内容时出现错误 E121:无法打开并写入文件解决方案

    在安装某些软件过程中会让你新建个txt或者在输入vim /etc/profile命令时,输入完毕后保存文件时就会报错 E121:无法打开并写入文件解决方案,一般的解决状况就是输入如下命令: :w !s ...

  6. Linux命令: 向文件写内容,编辑文件,保存文件,查看文件,不保存文件

    1.找到要编辑的文件 2.敲  vi t1.txt ,显示文件内容(vim命令) 3.敲 i,最下面变成INSERT 4.编辑自己想要的内容 5a.敲ESC:wq回车 5b.如果不想保存文件在时敲ES ...

  7. python中 .write 无法向文件写入内容

    问题代码如下 links = open("new") out = open("out.txt","w+") for link in link ...

  8. nodejs往文件写入内容代码

    const fs = require("fs"); // fs.wirteFile有三个参数 // 1,第一个参数是要写入的文件路径 // 2,第二个参数是要写入得内容 // 3, ...

  9. 添加一个txt文件(例如在桌面),利用后台对文件写入内容

    string str = "今天天气好晴朗,处处好风光."; //需要将字符串转化成字节数组 byte[] buffer = Encoding.Default.GetBytes(s ...

随机推荐

  1. python二叉树的遍历,递归和非递归及相关其它

    # encoding=utf-8class node(object): def __init__(self,data,left=None,right=None): self.data = data s ...

  2. plugin scala is incompatible with current installation

    源文链接:http://stackoverflow.com/questions/31927516/plugin-scala-is-incompatible-with-this-installation ...

  3. 在Tabbed Activity(ViewPager)中切换Fragment

    我用Android Studio的向导新建了一个Tabbed Activity,里面是ViewPager样式的,有三个tabs.如下: 但是我尝试在第一个tab中设置一个按钮,打开其他tab的时候,却 ...

  4. Hover show tips

    像上面这种效果,hover1时显示2,且1和2有一定间距的东东,一般有两种实现办法: 1.用JS,原理:over1时让2显示,out1时开个定时器延迟500ms再消失,over2时清除定时器,out2 ...

  5. Spring笔记02(3种加载配置文件的方式)

    1.不使用Spring的实例: 01.Animal接口对应的代码: package cn.pb.dao; /** * 动物接口 */ public interface Animal { //吃饭 St ...

  6. hdu畅通工程

    传送门 畅通工程 Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Su ...

  7. poj3585树最大流——换根法

    题目:http://poj.org/problem?id=3585 二次扫描与换根法,一次dfs求出以某个节点为根的相关值,再dfs遍历一遍树,根据之前的值换根取最大值为答案. 代码如下: #incl ...

  8. Elasticsearch官方安装

    Installationedit Elasticsearch requires at least Java 8. Specifically as of this writing, it is reco ...

  9. 百度地图API的第一次接触——右键菜单

    1.初始化地图 var map = new BMap.Map("container"); var point = new BMap.Point(116.404, 39.915); ...

  10. 利用MEF实现插件机制(可根据输入类型来加载特定dll)

    最近在做PACS的项目中想利用插件来加载各个不同的SCP的操作实现.比如Worklist的查询数据库,可以有多个实现. 比如MPPS的更新,也可以有多个实现. 为了统一弹性处理插件模块,增加了类型输入 ...