TA的每日心情 | 衰 2019-11-19 15:32 |
---|
签到天数: 1 天 [LV.1]初来乍到
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
3 r v/ m5 Q* m( Y% d
Linux fmt命令用于编排文本文件。
3 i! i4 V5 S$ E, _/ g4 b( c
( W3 P+ I) h: L( w( Ufmt指令会从指定的文件里读取内容,将其依照指定格式重新编排后,输出到标准输出设备。若指定的文件名为"-",则fmt指令会从标准输入设备读取数据。. Q* }6 b9 U0 k2 N4 [$ q) X5 O
$ r, ?. S* b9 W6 O5 G* G3 @
& s5 [" G5 e s' B* p( U' N
语法
! t* n5 d. q/ i; Y: t* g' u8 R3 q
fmt [-cstu][-p<列起始字符串>][-w<每列字符数>][--help][--version][文件...]
$ ^' R% C0 ]# t4 X0 R! }$ A) c, k* m
& x; E0 ]3 j6 i) p$ N* B
2 {# {/ e* V! z$ j& J/ ^6 u& O- b. X
参数说明:# d& J3 r7 I" z, s6 z9 O0 v4 u& t6 }
% J( o O+ q: Z! f-c或--crown-margin 每段前两列缩排。- h6 G, Y' a, f2 T+ b
-p<列起始字符串>或-prefix=<列起始字符串> 仅合并含有指定字符串的列,通常运用在程序语言的注解方面。
7 c3 S# a8 |" t! V( A R4 m-s或--split-only 只拆开字数超出每列字符数的列,但不合并字数不足每列字符数的列。' V; A1 r' @9 K1 {! P
-t或--tagged-paragraph 每列前两列缩排,但第1列和第2列的缩排格式不同。
3 v1 `1 D! F8 v- z-u或--uniform-spacing 每个字符之间都以一个空格字符间隔,每个句子之间则两个空格字符分隔。8 B6 _3 e" H( i: v7 C3 c6 U
-w<每列字符数>或--width=<每列字符数>或-<每列字符数> 设置每列的最大字符数。+ J) m6 O! F+ e8 i, _. p6 n* {' K& v5 p `
--help 在线帮助。
( E6 B& A# f0 L# @--version 显示版本信息。, t# T# ]2 v# a( X9 M9 d
. ^! h8 g( K0 R! K4 W1 _8 D9 j! D8 q1 c6 y# l
实例6 ~3 U# o5 A K# z4 s9 T9 y
' h" l. [+ ?' I# C' F1 v重排指定文件。如文件testfile共5 行文字,可以通过命令对该文件格式进行重排,其命令为:- |0 r4 @$ ]* E- Z$ C
) t3 V* b; F$ b6 [: v, X* Gfmt testfile % R: |: w/ k* D9 n4 y
$ _6 Z& `8 I$ T* E/ u) c
2 J3 R% S/ x0 l3 b输出结果如下:0 O+ M# D" p* e* {% a& d# b/ h
. i+ Z3 T0 U: O! |$ fmt testfile #重排testfile 文件
; a p( i+ T. r- Z$ a) Ehello Linux! Linux is a free Unix-type operating system. This is a - x8 ~4 R0 x; T' Y+ Q" Z4 N3 a
Linux testfile! Linux Linux
P6 G# v& O% L2 ?' m: m# I
& G3 K9 W+ F8 f2 y' H
S3 j# j# B1 N) r! }/ e6 F将文件testfile重新排成85 个字符一行,并在标准输出设备上输出,其命令应该为:4 W3 W& n/ I" X E
' S/ g/ J ?' `5 i D7 ^- C
fmt -w 85 testfile
( ]1 U% W* Y! }+ ?
8 P U2 \9 t& N8 G. t) F& t& e4 `" `2 _
为了对比,先使用cat 命令查看文件内容:# o* `3 x2 k3 R* |$ N$ _& x8 L
$ V6 i8 E. u |$ cat testfile #查看testfile 文件的内容 ' ~6 z' l, p4 ^6 Y* f) A7 ~ S- e4 a
hello Linux!
) k8 ^$ o( Q3 \ l7 [0 oLinux is a free Unix-type operating system.
, x. I& k5 E# C' ]& a+ S0 I0 K' VThis is a Linux testfile! 9 x5 j1 J8 ~# n; K6 F' M7 i
Linux
. v3 T7 x$ D# E/ V6 v' yLinux
/ Q: k$ V/ g+ Q4 F; j
5 A) |- ^# O2 x4 N# q2 y5 x( E5 \/ D+ |! |) v
使用fmt命令重排之后,输出结果如下:" p( @; v( \3 S# ~2 d
$ q- F- d! r0 J' H. f$ D$ fmt -w 85 testfile #指定重排宽度为85个字符 ) u: D' F( g0 k1 H$ ]
hello Linux! Linux is a free Unix-type operating system. This is a Linux testfile! 1 P# K5 J0 c' ]& u. e8 C
Linux Linux 9 X) n* q7 Z3 g: S* s! {
|
|