找回密码
 注册
关于网站域名变更的通知
查看: 410|回复: 4
打印 上一主题 下一主题

Linux fmt命令

[复制链接]
  • TA的每日心情

    2019-11-19 15:32
  • 签到天数: 1 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
    发表于 2021-9-22 14:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

    您需要 登录 才可以下载或查看,没有帐号?注册

    x

    0 z" W8 R$ V) a# C7 GLinux fmt命令用于编排文本文件。
    5 z. q$ k/ p. p3 v# u% o9 Z$ a2 W$ W) a; Q
    fmt指令会从指定的文件里读取内容,将其依照指定格式重新编排后,输出到标准输出设备。若指定的文件名为"-",则fmt指令会从标准输入设备读取数据。
    0 c' ~$ ^. q3 ^# E
    6 P0 A+ l; y4 W) t# {
    ( |0 b9 x6 b+ Y6 I语法
    ) X& z' O. g% M7 l" l) T% ]& f: Z% T
    fmt [-cstu][-p<列起始字符串>][-w<每列字符数>][--help][--version][文件...]
    8 W$ {( J+ y1 s- d  V' h  b2 W* \5 Q. j( N: G$ `, t/ l
    ( p- N3 a6 J$ j! z$ c+ @
    8 h) R6 f  s$ O/ G( K
    参数说明:, ^) E7 k) v) I7 M
    1 K( a( k' }! }& B8 A, h; a1 Y7 {
    -c或--crown-margin 每段前两列缩排。& i7 [; s" N* Q6 P# ?
    -p<列起始字符串>或-prefix=<列起始字符串> 仅合并含有指定字符串的列,通常运用在程序语言的注解方面。
    3 O& s- h$ N0 q+ }  W$ C0 M-s或--split-only 只拆开字数超出每列字符数的列,但不合并字数不足每列字符数的列。7 C; v9 y, d: J) @( [' I' w( @" ?* i
    -t或--tagged-paragraph 每列前两列缩排,但第1列和第2列的缩排格式不同。& p3 Y: N) I) s& K
    -u或--uniform-spacing 每个字符之间都以一个空格字符间隔,每个句子之间则两个空格字符分隔。
    . R1 l$ f: N9 p7 Y-w<每列字符数>或--width=<每列字符数>或-<每列字符数> 设置每列的最大字符数。6 t0 y3 u! T0 Y- _, w5 v
    --help 在线帮助。
    - A% S8 F( |& Y. ]) v* D--version 显示版本信息。' H: I/ T% B9 Y4 [4 r

    0 ]$ g. S8 X- m
    0 N$ [  i3 p4 u+ Z$ j' i0 Q( k实例: s" a' F2 }2 k: o$ ]

    3 F8 C+ \3 d: m重排指定文件。如文件testfile共5 行文字,可以通过命令对该文件格式进行重排,其命令为:
    7 G( F) ?( g8 ^" E& j
    4 T, S/ ~& ]5 C+ r: [- j$ sfmt testfile # ^) \4 v' H5 n2 R3 a3 i
    9 V3 ~, O  S6 w' r& q+ M

    , y; P& v+ u$ S! o" O8 Y2 L5 @输出结果如下:
    ' c! i5 f" E, p1 I/ N8 q
    5 n2 ]' F/ o4 O$ Z( |9 Q$ fmt testfile #重排testfile 文件  $ ?1 R7 b2 R" W0 z5 j9 ?) O5 A
    hello Linux! Linux is a free Unix-type operating system. This is a  
    % W) l  r% `% z4 s$ mLinux testfile! Linux Linux 0 w4 x) h/ V. `& l" ?
    : ~7 k. a! f) t3 P9 c1 @

    . l; H# M: ]% M7 ^将文件testfile重新排成85 个字符一行,并在标准输出设备上输出,其命令应该为:. j5 K" l: Y! Y! S- x( [
    / }$ Z  B  @# D" V
    fmt -w 85 testfile
    / Y3 Q, m4 A# v0 t% S7 `/ {
    # B8 r& w1 X  ]! s3 L9 w, A' j+ t0 U" @. |  Y; D1 V
    为了对比,先使用cat 命令查看文件内容:
      O( B5 X5 g, O# L* j8 Y, k0 {. r5 O4 J, R1 B
    $ cat testfile #查看testfile 文件的内容  
    $ d2 }/ [+ h) hhello Linux!  
    # y. Z6 ~2 F( R% b2 ?% bLinux is a free Unix-type operating system.  $ s4 T  {2 u6 |! V  h3 ~! S# e
    This is a Linux testfile!  
    * L' j+ P. m3 \: `  ?Linux  2 A7 J% t9 \; Z7 @1 O
    Linux
    ' x' i; |+ _" A/ v* i
    ) K6 v0 ]# W% A* v+ k: y
    0 x! o. d& i" W/ k2 i/ v4 |使用fmt命令重排之后,输出结果如下:
    5 Q$ ]$ K( j3 U2 W0 Y
    5 j2 l# Y! Y; y8 Z! f0 m' F$ fmt -w 85 testfile #指定重排宽度为85个字符  ) u0 i/ F: q( F# w" p, Q! b
    hello Linux! Linux is a free Unix-type operating system. This is a Linux testfile!  
    / Z' X) T. u9 |+ w; B) GLinux Linux
    * r& `; n& ~/ |! T

    该用户从未签到

    2#
    发表于 2021-9-22 15:02 | 只看该作者
    这是编排文本的命令吧

    该用户从未签到

    3#
    发表于 2021-9-22 15:30 | 只看该作者
    Linux fmt命令用于编排文本文件
  • TA的每日心情
    慵懒
    2020-6-13 15:46
  • 签到天数: 1 天

    [LV.1]初来乍到

    4#
    发表于 2021-9-22 15:31 | 只看该作者
    fmt指令会从指定的文件里读取内容,将其依照指定格式重新编排后,输出到标准输出设备

    该用户从未签到

    5#
    发表于 2021-9-22 15:31 | 只看该作者
    若指定的文件名为"-",则fmt指令会从标准输入设备读取数据
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-11-24 01:26 , Processed in 0.156250 second(s), 23 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表