0 引言
我们使用的电脑屏幕有宽有窄,我们有时候希望文件能按照我们的屏幕宽度来调整和匹配,这时我们可以使用fold命令。
1 fold命令 的帮助信息、功能、命令格式、选项和参数说明
1.1 fold 命令 的帮助信息
我们可以输入命令 fold--help 来查看fold 命令的帮助信息。
[purpleendurer @ bash ~ ] fold --help
Usage: fold [OPTION]... [FILE]...
Wrap input lines in each FILE (standard input by default), writing to
standard output.
Mandatory arguments to long options are mandatory for short options too.
-b, --bytes count bytes rather than columns
-c, --characters count characters rather than columns
-s, --spaces break at spaces
-w, --width=WIDTH use WIDTH columns instead of 80
--help display this help and exit
--version output version information and exit
GNU coreutils online help: <http://www.gnu.org/software/coreutils/>
Report fold translation bugs to <http://translationproject.org/team/>
For complete documentation, run: info coreutils 'fold invocation'
[purpleendurer @ bash ~ ]
1.2 fold命令 的功能
fold命令用于限制文件内容列宽。
fold命令会从指定的文件里读取内容,将超过限定列宽的列加入增列字符后,输出到标准输出设备。
1.3 fold命令 格式
fold [选项]... [文件]...
1.4 fold 命令 选项说明
选项 |
说明 |
-b,--bytes |
计算字节而不是列 |
-c,--characters |
计算字符数而不是列数 |
-s,--spaces |
--在空格处断开 |
-w,--width=WIDTH |
使用 WIDTH 列而不是 默认的80 列 |
--help |
显示此帮助并退出 |
--version |
输出版本信息并退出 |
1.5 参数说明
文件:要处理的文件名称。
若不指定任何文件名称,或是所给予的文件名为"-",则fold指令会从标准输入设备读取数据。
2 fold 命令使用实例
2.0 创建演示文件
我们使用echo命令成生序列 0-9、A-Z和a-z通过输出重定向保存到文件a
[purpleendurer @ bash ~ ] echo {0..9} > a
[purpleendurer @ bash ~ ] echo {A..Z} >> a
[purpleendurer @ bash ~ ] echo {a..z} >> a
[purpleendurer @ bash ~ ] cat a
0 1 2 3 4 5 6 7 8 9
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
a b c d e f g h i j k l m n o p q r s t u v w x y z
[purpleendurer @ bash ~ ]
2.1 按指定列数换行输出
在默认情况下,fold 命令将列数限制为 80。
我们可以使用 -w 选项调整列数值。
例如以7列输出文件a的内容:
[purpleendurer @ bash ~ ] fold -w 7 a
0 1 2 3
4 5 6
7 8 9
A B C D
E F G
H I J K
L M N
O P Q R
S T U
V W X Y
Z
a b c d
e f g
h i j k
l m n
o p q r
s t u
v w x y
z
[purpleendurer @ bash ~ ]
2.2 在空格处进行折断
为了避免行末的单词因为列宽限制而断开成两行,我们可使用 -s选项确保行仅在空格处换行。
如以7列输出文件a的内容,并确保行仅在空格处换行。
[purpleendurer @ bash ~ ] fold -w 7 -s a
0 1 2
3 4 5
6 7 8 9
A B C
D E F
G H I
J K L
M N O
P Q R
S T U
V W X
Y Z
a b c
d e f
g h i
j k l
m n o
p q r
s t u
v w x
y z
[purpleendurer @ bash ~ ]
2.3 按指定字节数换行输出
如果我们希望fold 计量单位是字节数而不是列数,可以使用 -b 选项。
例如,以20个字节换行输出文件a的内容
[purpleendurer @ bash ~ ] fold -b20 a
0 1 2 3 4 5 6 7 8 9
A B C D E F G H I J
K L M N O P Q R S T
U V W X Y Z
a b c d e f g h i j
k l m n o p q r s t
u v w x y z
[purpleendurer @ bash ~ ]