0.前言

    本文总结如何使用echo命令向文件中写入内容,例如使用echo指令覆盖文件内容,使用echo指令向文件追加内容,使用echo指令往文件中追加制表符。
    echo向文件中输出内容的基本方法是使用IO重定向指令——“>”,默认情况下echo输出到标准输出中,使用>指令可重定向输出到文件中。
 
1.echo指令基本用法
【2】输入指令获得帮助
    sudo echo --help
        返回内容如下

用法:echo [短选项]... [字符串]...
或:echo 长选项 将 STRING 回显到标准输出。 -n 不尾随换行符
-e 启用解释反斜杠的转义功能
-E 禁用解释反斜杠的转义功能(默认)
--help 显示此帮助信息并退出
--version 显示版本信息并退出
若-e 可用,则以下序列即可识别:
\\ 反斜杠
\a 响铃声
\b 退格
\c 不再产生新的输出
\e 转义符
\f 换页
\n 新行
\r 回车
\t 水平制表符
\v 竖直制表符
\0NNN 字节数以八进制数 NNN (1至3位)表示
\xHH 字节数以十六进制数 HH (1至2位)表示

  2.覆盖文件内容

    【示例脚本】test.sh
    使用>指令覆盖文件原内容并重新输入内容,若文件不存在则创建文件。
#!/bin/bash
echo "Raspberry" > test.txt
    【操作过程】
# 修改权限,脚本可执行
chmod u+x test.sh    
./test.sh
    【文件内容】
Raspberry
 
3.追加文件内容
    【示例脚本】test.sh
    使用>>指令向文件追加内容,原内容将保存。
#!/bin/bash
echo "Raspberry" > test.txt
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
#!/bin/bash
echo -e "{" > test-json.txt
echo -e "\t\"name\":\"xukai871105\"" >> test-json.txt
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

#!/bin/bash
FILE="test-json.txt"
echo -e "{" > $FILE
echo -e "\t\"name\":\"xukai871105\"" >> $FILE
echo -e "}" >> $FILE

  

【操作过程】
# 修改权限,脚本可执行
chmod u+x test-json.sh    
./test-json.sh  
    【文件内容】
{
     "name":"xukai871105"
}
 
6.总结
    Linux的技巧还有很多,需要慢慢积累。给自己加个油。

Linux学习笔记——如何使用echo指令向文件写入内容的更多相关文章

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

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

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

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

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

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

  4. Linux学习笔记之vim操作指令大全

    0x00 关于Vim Vim是款强大的文本编辑器,但是众多指令需要学习,这次记录了指令大全方便以后翻阅. Vim的几种模式 正常模式:可以使用快捷键命令,或按:输入命令行. 插入模式:可以输入文本,在 ...

  5. Linux 学习笔记_12_文件共享服务_3_NFS网络文件服务

    NFS网络文件服务 NFS---- Network File System 用于UNIX/Linux[UNIX类操作系统]系统间通过网络进行文件共享,用户可以把网络中NFS服务器提供的共享目录挂载到本 ...

  6. Linux学习笔记:cp和scp复制文件

    拷贝文件和文件夹,在Linux上通过cp命令来实现. cp:用户当前机器的文件复制 scp:通过ssh本机和其他机器的文件复制 secure copy cp a.txt b.txt scp a.txt ...

  7. Linux学习笔记(三)目录和文件都能操作的命令

    目录和文件都能操作的命令 rm cp mv rm 英文原意:remove files or directories 功能:删除文件或目录 语法:rm 选项[-fir] 文件或目录 rm -f 强制删除 ...

  8. Linux学习笔记之ubuntu如何在vi中写入中文注释

    点击左边设置system settings,再点击Language Suppotr 点击Remind Me Later 选择ibus 然后关闭,在终端写入ibus-setup,弹出设置框,选择INPU ...

  9. (转)Linux最常用指令及快捷键 Linux学习笔记

    Linux最常用指令及快捷键 Linux学习笔记 原文:http://blog.csdn.net/yanghongche/article/details/50827478 [摘自 鸟叔的私房菜]--转 ...

随机推荐

  1. 1080 Graduate Admission (30)(30 分)

    It is said that in 2013, there were about 100 graduate schools ready to proceed over 40,000 applicat ...

  2. hdu3518 Boring Counting[后缀排序]

    裸的统计不同的重复出现子串(不重叠)种数的题.多次使用后缀排序要注意小细节.y数组在重复使用时一定要清空,看那个line25 +k就明白了 ,cnt也要清空,为什么就不说了 #include<b ...

  3. poj 2420 A Star not a Tree?——模拟退火

    题目:http://poj.org/problem?id=2420 精度设成1e-17,做三遍.ans设成double,最后再取整. #include<iostream> #include ...

  4. 连续4个小时ping不通远端主机,则本机关机

    #!/bin/bash #连续4个小时ping不通远端主机,则本机关机. begin_time=$(date "+%s") while true;do sleep 2 ping - ...

  5. Tomcat加载JSP原理

    Tomcat加载JSP主要有以下几个类: JspServlet JspServletWrapper JspCompilationContext JspRuntimeContext JsperLoade ...

  6. 关于WPF的弹出窗口

    几个重要的概念需要清楚: Show和ShowDialog区别 1.调用Show方法后弹出子窗口后,线程会继续往下执行.调用ShowDialog方法弹出子窗口后,线程会阻塞,直到子窗口关闭才继续往下执行 ...

  7. 了解protected 以及公用、私有和受保护的继承

    protected成员 可以认为protected访问标号是private 和public 的混合: 1.像private成员一样,protected成员不能被类的用户访问. 2.像public成员一 ...

  8. 21.运行Consent Page

    服务端把这个地方修改为true,需要设置 运行测试.服务端和客户端都运行起来 我们使用的用户是在这里配置的 服务端修改ConsentController 再次运行,但是页面都是乱码 openId和pr ...

  9. “MVC+Nhibernate+Jquery-EasyUI”信息发布系统 第一篇

    一.第一篇内容中必须得简单的介绍一下MVC(在大学时用的是WebForm,拖控件感觉很爽,但是工作后,技术总监让一定要放弃这种 想法!) 1.MVC是什么?:(1) ASP.NET MVC是微软官方提 ...

  10. hdu 4336 Card Collector (概率dp+位运算 求期望)

    题目链接 Card Collector Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Othe ...