fmt命令

简单的格式化文本

fmt [option] [file-list]

fmt通过将所有非空白行的长度设置为几乎相同,来进行简单的文本格式化

参数

fmtfile-list中读取文件,并将其内容的格式化版本发送到标准输出。如果不制定文件名或者用连字符(-)来替代文件名,则fmt将从标准输入读取文本信息

选项

-s              截断长行,但不合并

-t               除每个段落的第1行外都缩进

-u              改变格式化,使字之间出现一个空格,句子之间出现两个空格

-w n           将输出的行宽改为n个字符。不带该选项时,fmt输出的行宽度为75个字符

示例

原文件

$ cat demo
A long time ago, there was a huge apple tree.         A little boy loved to come and play around it every day. He climbed to the tree top, ate the apples, took a nap under the shadow… He loved the tree and the tree loved to play with him. 

fmt -s

$ fmt -s demo
A long time ago, there was a huge apple tree.         A little boy loved
to come and play around it every day. He climbed to the tree top, ate
the apples, took a nap under the shadow… He loved the tree and the
tree loved to play with him.

截断长行

fmt -t

$ fmt -t demo
A long time ago, there was a huge apple tree.         A little boy loved
   to come and play around it every day. He climbed to the tree top,
   ate the apples, took a nap under the shadow… He loved the tree and
   the tree loved to play with him.

排除首行的缩进

fmt -u

$ fmt -u demo
A long time ago, there was a huge apple tree.  A little boy loved to come
and play around it every day. He climbed to the tree top, ate the apples,
took a nap under the shadow… He loved the tree and the tree loved to
play with him.

格式化单词和句子的间隔,很明显A little boy那里的多个空格被截断到两个

fmt -w

$ fmt -w 40 demo
A long time ago, there was a huge
apple tree.         A little boy
loved to come and play around it
every day. He climbed to the tree top,
ate the apples, took a nap under the
shadow… He loved the tree and the
tree loved to play with him.

指定输出的行宽,这里的行宽为40个字符,我没数过

reference:http://www.cnblogs.com/nerxious/archive/2013/01/09/2853091.html

时间: 2024-11-09 02:52:41

fmt命令的相关文章

27个Linux文档编辑命令

Linux col命令 Linux col命令用于过滤控制字符. 在许多UNIX说明文件里,都有RLF控制字符.当我们运用shell特殊字符">"和">>",把说明文件的内容输出成纯文本文件时,控制字符会变成乱码,col指令则能有效滤除这些控制字符. Linux colrm命令 Linux colrm命令用于滤掉指定的行. colrm指令从标准输入设备读取书记,转而输出到标准输出设备.如果不加任何参数,则该指令不会过滤任何一行. Linux com

Go语言常用命令介绍

go build go build 命令主要是用于测试编译.在包的编译过程中,若有必要,会同时编译与之相关联的包. 如果是普通包,当你执行go build命令后,不会产生任何文件. 如果是main包,当只执行go build命令后,会在当前目录下生成一个可执行文件.如果需要在$GOPATH/bin木下生成相应的exe文件,需要执行go install 或者使用 go build -o 路径/a.exe. 如果某个文件夹下有多个文件,而你只想编译其中某一个文件,可以在 go build 之后加上文

Linux常用脚本命令总结

基本操作 通用操作 1. export 显示所有的环境变量,也可以获取到某个变量的详细信息: export # 显示所有 echo $SHELL # 只显示SHELL 2. whereis 使用系统自动构建的数据库来搜索可执行文件: whereis python # 如果搜不到就不输出 3. which 它在环境变量PATH指定的目录中搜索可执行文件.此命令将打印可执行文件的完整路径. which python # 如果搜不到就不输出 4. clear 清除窗口上的内容. 文件操作 5. ls

Go语言命令行操作命令详细介绍

转自:http://www.jb51.net/article/56781.htm Go 命令 Go语言自带有一套完整的命令操作工具,你可以通过在命令行中执行go来查看它们: 图 Go命令显示详细的信息 这些命令对于我们平时编写的代码非常有用,接下来就让我们了解一些常用的命令. go build 这个命令主要用于测试编译.在包的编译过程中,若有必要,会同时编译与之相关联的包. 1.如果是普通包,就像我们在1.2节中编写的mymath包那样,当你执行go build之后,它不会产生任何文件.如果你需

Linux命令-文本编辑(一)

Linux col命令 Linux col命令用于过滤控制字符. 在许多UNIX说明文件里,都有RLF控制字符.当我们运用shell特殊字符">"和">>",把说明文件的内容输出成纯文本文件时,控制字符会变成乱码,col指令则能有效滤除这些控制字符. 语法 col [-bfx][-l<缓冲区列数>] 实例 下面以 man 命令帮助文档为例,讲解col 命令的使用. 将man 命令的帮助文档保存为man_help,使用-b 参数过滤所有控

将目录中所有.go文件进行go fmt

代码以及使用方法:https://github.com/lzw730/gofmtAllDir package main import ( "flag" "fmt" "io/ioutil" "log" "os" "os/exec" "path/filepath" "strings" ) //获取指定目录及所有子目录下的所有文件,可以匹配后缀过滤. f

Go学习笔记(2) 语言基础和数值布尔类型

  1. Go语言环境变量 Go语言开发环境依赖一些操作系统环境变量,常用的环境变量如下: $GOROOT 表示 Go 在你的电脑上的安装位置,它的值一般都是 $HOME/go,当然,你也可以安装在别的地方. $GOARCH 表示目标机器的处理器架构,它的值可以是 386,amd64 或 arm. $GOOS 表示目标机器的操作系统,它的值可以是 darwin,freebsd,linux 或 windows $GOBIN 表示编译器和链接器的安装位置,默认是 $GOROOT/bin,如果你使用的

四.实时同步

01. 课程概念介绍 01. 为什么要用实时同步服务 因为定时任务有缺陷,一分钟以内的数据无法进行同步,容易造成数据丢失 02. 实时同步工作原理 a 创建要存储数据的目录 b 利用实时同步的软件监控我们进行备份的数据目录 c 利用rsync服务进行数据推送传输备份 02. 实时同步服务软件部署 a inotify+rsync实现实时同步备份 第一个里程:将inotify软件安装成功 yum install -y inotify-tools 说明:操作系统的yum源文件中,是否存在epel源 w

Go语言开发(一)、Go语言简介

Go语言开发(一).Go语言简介 一.Go语言简介 1.Go语言简介 Go,全称golang,是Google开发的一种静态强类型.编译型.并发型并具有垃圾回收功能的编程语言. Go从2007年末由Robert Griesemer.Rob Pike.Ken Thompson(C语言发明者)主持开发,于2009年11月正式宣布成为开放源代码项目,并在Linux及Mac OS X平台上进行了实现,后续增加了Windows平台的实现.2012年初,Go语言官方发布了Go 1.0稳定版本,目前Go语言基于