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

Linux fmt命令

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

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

    [LV.1]初来乍到

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

    EDA365欢迎您登录!

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

    x
    1 ?1 C  Y1 X- K* h& t5 F
    Linux fmt命令用于编排文本文件。
    0 Q( q3 C1 P4 x% l: @
    $ ], B  F3 b- i% E8 _. jfmt指令会从指定的文件里读取内容,将其依照指定格式重新编排后,输出到标准输出设备。若指定的文件名为"-",则fmt指令会从标准输入设备读取数据。* {& o* k$ P0 `( Y8 h4 ]* G
    * [7 }2 Z& X  Y3 ~. ]* H

    8 x3 m4 |4 j: A/ k: A5 \, A# _' n语法/ f- l( o& F! ~* [' o: b3 p1 S

    1 L( F' a2 q5 m* C- C) Ufmt [-cstu][-p<列起始字符串>][-w<每列字符数>][--help][--version][文件...]5 ~4 i  E' f- C

    2 A, s6 A% i% _) {& u: X! D, C& A8 @1 k8 {; D8 y' ?
    7 m! h. W" m5 d1 w6 ?8 X
    参数说明:
    & M  ~" h6 J- I  w8 U- J+ s) W" g
    -c或--crown-margin 每段前两列缩排。3 @, D% h) @. D, }5 ^! {
    -p<列起始字符串>或-prefix=<列起始字符串> 仅合并含有指定字符串的列,通常运用在程序语言的注解方面。
    - e: n6 o0 b/ H' e-s或--split-only 只拆开字数超出每列字符数的列,但不合并字数不足每列字符数的列。
    9 S  a* A% ~8 u! `6 X-t或--tagged-paragraph 每列前两列缩排,但第1列和第2列的缩排格式不同。
    9 y" @+ C" x3 f# `/ t& t! m-u或--uniform-spacing 每个字符之间都以一个空格字符间隔,每个句子之间则两个空格字符分隔。7 z& F* L7 c! k! ^: Z! c
    -w<每列字符数>或--width=<每列字符数>或-<每列字符数> 设置每列的最大字符数。- t; G) ^2 d% S  [
    --help 在线帮助。, C, {- O6 {& N+ }
    --version 显示版本信息。6 d2 V; r2 k( a
    % A% d, j; U( R' n1 I) o

    * c+ b$ Y0 c( X, O实例" ^! U8 W8 U! f+ a+ y
    ! w" e( Q; f  O  {& G
    重排指定文件。如文件testfile共5 行文字,可以通过命令对该文件格式进行重排,其命令为:6 P( `" q4 l* q6 [
    1 i( y1 Q  S& @1 r* P
    fmt testfile
    5 ?  X' ^3 {% B& Y0 a, T9 O
    , h5 T9 \: W* ^0 N+ V8 _. `+ Q! b# h- @
    输出结果如下:& X$ j) `# B3 A2 [9 X! `
    . N) T  Z/ X8 x/ |) |8 i- r
    $ fmt testfile #重排testfile 文件  ) A5 A& ^0 X4 i. `. H
    hello Linux! Linux is a free Unix-type operating system. This is a  
    , u" y! t- J2 P5 m5 wLinux testfile! Linux Linux - g5 s+ V$ O& r# J( o# `3 f
    2 `+ }( y3 y6 z5 u  k

    & |3 g$ k" W/ n# }" M/ }* Q将文件testfile重新排成85 个字符一行,并在标准输出设备上输出,其命令应该为:( w, @; j5 ~- a* ~) U2 X1 ^& q

    2 \5 F: a1 d5 [, Tfmt -w 85 testfile
    $ q2 C; e  Q$ `% F+ h
    " e5 V4 Y- W1 f$ A& y, ]) n( T0 K# n! y" n( w
    为了对比,先使用cat 命令查看文件内容:! W* n+ V! I& N8 `2 x$ T+ j( \  b

    3 T: t0 {2 ?$ B$ cat testfile #查看testfile 文件的内容  6 f$ r7 k+ u% H4 K& u; }
    hello Linux!  ; h' v+ z9 X8 Z( g0 f: I
    Linux is a free Unix-type operating system.  
    1 i) S0 r' p/ y' D3 Y. [5 sThis is a Linux testfile!  3 l4 Y2 i0 e4 F* H( Q" f6 r
    Linux  0 G% _! v1 K' w1 |$ H% |
    Linux ) q/ l% F  M5 A1 z( d* d
    8 Z2 j# o  t7 ^+ d$ G5 ?6 P
    ' S3 ~2 t, ?. D, j$ E
    使用fmt命令重排之后,输出结果如下:
    " ]# n0 i% t2 Q/ K, y9 n; q+ R6 g+ ]% e) s& k8 @
    $ fmt -w 85 testfile #指定重排宽度为85个字符  7 ^" D! I" F6 Z. P
    hello Linux! Linux is a free Unix-type operating system. This is a Linux testfile!  : A( ?4 ^7 O0 S1 n3 j6 Y
    Linux Linux
    ) \' F1 c8 m& m8 j. y7 A

    该用户从未签到

    5#
    发表于 2021-9-22 15:31 | 只看该作者
    若指定的文件名为"-",则fmt指令会从标准输入设备读取数据
  • TA的每日心情
    慵懒
    2020-6-13 15:46
  • 签到天数: 1 天

    [LV.1]初来乍到

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

    该用户从未签到

    3#
    发表于 2021-9-22 15:30 | 只看该作者
    Linux fmt命令用于编排文本文件

    该用户从未签到

    2#
    发表于 2021-9-22 15:02 | 只看该作者
    这是编排文本的命令吧
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

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

    EDA365公众号

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

    GMT+8, 2025-11-24 12:11 , Processed in 0.171875 second(s), 24 queries , Gzip On.

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

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

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