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. 51Nod 1294 修改数组 —— LIS

    题目链接:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1294 1294 修改数组  题目来源: HackerRank ...

  2. matlab打开文件对话框

    [filename, pathname, filterindex] = uigetfile({'*.xyz', '点云文件 (*.xyz)';'*.*', 'All Files (*.*)'},'请选 ...

  3. apache-tomcat 及对应eclipse下载地址for mac

    tomcat 7.0.42http://mirrors.hust.edu.cn/apache/tomcat/tomcat-7/v7.0.42/bin/apache-tomcat-7.0.42.zip ...

  4. java中indexOf()

    Java中字符串中子串的查找共有四种方法,如下:1.int indexOf(String str) :返回第一次出现的指定子字符串在此字符串中的索引. 2.int indexOf(String str ...

  5. 英特尔® Software Guard Extensions 教程系列:第一部分,英特尔® SGX 基础

    英特尔® Software Guard Extensions 教程系列:第一部分,英特尔® SGX 基础 from:https://software.intel.com/zh-cn/articles/ ...

  6. linux命令学习笔记-kill和killall命令详解

    *杀死进程最安全的方法是单纯使用kill命令,不加修饰符,不带标志. 首先使用ps -ef命令确定要杀死进程的PID,然后输入以下命令: # kill -pid 注释:标准的kill命令通常都能达到目 ...

  7. intent实现Activity之间跳转的各种传值

    一.在Activity之间传递String类型的数据 传递 @Override public void onClick(View v) { String num1 = firstNum.getText ...

  8. xxx referenced from: xxx in xxx.o

    情形一:可能是有一些源码文件没有加入工程所导致的,找到相应的.h和.m文件,将其add进入项目工程即可解决这种问题. 情形二:也有可能是某些framework没有加入项目中, 示例:   Undefi ...

  9. 用CSS实现新闻轮播效果

    CSS: /* Make it a marquee */ .marquee { width: 450px;margin: 0 auto;overflow: hidden;white-space: no ...

  10. P2042 [NOI2005]维护数列[splay或非旋treap·毒瘤题]

    P2042 [NOI2005]维护数列 数列区间和,最大子列和(必须不为空),支持翻转.修改值.插入删除. 练码力的题,很毒瘤.个人因为太菜了,对splay极其生疏,犯了大量错误,在此记录,望以后一定 ...