首先,我們將著眼于一些簡單的格式工具。它們都是功能單一的工具,并且做法有一點單純,但是它們能被用來小任務并且作為腳本和管道的一部分。
nl是一個相當神秘的工具,用作一個簡單的任務。它添加文件的行數,在最簡單的用途中,它相當于cat-n。像cat、nl能接受多個文件作為命令參數,也能標準輸出。然而,nl卻又一個相當于數量的選項并且支持一個簡單的標記方式去允許更多復雜的方式的計算。nl在計算的時候用到一個叫做“邏輯頁面”的概念。這就允許nl在計算的時候去重設(再一次開始)可數的序列。每一個標記的元素肯定在自己的行中獨自出現,但在處理完一個標記元素之后,nl就把它從文本流中刪除。
折疊——fold是將文本的行限制到特定的寬的過程,fold接受一個或多個文件及標準輸入。如果將一個文本流fold,用echo命令發送的文本用-w選項分解成塊,可以發現文本行不會因為單詞邊界而不會被分解。但是如果加上-s選項,將讓fold分解到最后可用的空白字符,即會考慮單詞邊界。
fmt程序同樣折疊文本,但外加很多功能。它接受文本或標準輸入并且在文本流上呈現照片轉換。也就是說,它填補并且將文本粘貼在一起并保留了空白符和縮進。默認來說,空白行、單詞間距、還有縮進都會在輸出中保留;持續輸入不同的縮進的流不會被結合。現在我們可以使用fmt,能格式輸出并且不讓代碼