seq 命令是 sequence 的縮寫,用于打印數字序列。數字可以是整數或者實數(帶小數點)。
我們今天通過幾個例子來看一下如何使用這個命令。
使用 seq 命令
在不帶任何選項的情況下,使用 seq 可以生成3中不同格式的數字序列。
打印數字序列直到某一上限
最簡單的例子,我們為 seq 指定一個上限,它將打印從 1 開始到我們指定的這個上限之間的數字序列。命令格式如下:
seq n
以下是一個例子:
$ seq 4
1
2
3
4
打印兩個數字之間的數字序列(指定上限和下限)
我們指定兩個數字,它將打印這兩個數字之間的數字序列(兩個數字之間的升序排列)。命令格式如下:
seq n1 n2
如下是一個簡單的例子:
$ seq 3 6
3
4
5
6
指定限值與步長(增量)
我們上述所有粒子中,數字序列中的增量為1,也可以自定義增量。命令格式如下:
seq n1 inc n2
其中的增量值(步長)可以是整數也可以是小數。看如下例子:
$ seq 3 0.5 6
3.0
3.5
4.0
4.5
5.0
5.5
6.0
那么,如果我們指定的步長為0.7會怎么樣呢?這種情況下,其數字序列不會大于上限值:
$ seq 3 0.7 6
3.0
3.7
4.4
5.1
5.8
打印遞減序列
另一個用法是可以打印遞減序列,為此,需要指定一個 負的增量值 ,看下面的例子:
$ seq 6 -1 4
6
5
4
以上例子都是不帶任何選項的使用方法,下面我們介紹幾種帶選項的用法。
打印相同格式(數字位數)的序列
選項 -w 可以讓打印的數字序列保持相同的格式(數字位數)。如下例子:
$ seq -w 9 11
09
10
11
以特定格式打印序列
使用 選項 -f 可以指定序列的格式,讓其格式化輸出:
$ seq -f '##%g##' 3 5
##3##
##4##
##5##
上述命令中 %g 表示打印默認數字。另外,%e 表示以指數方式顯示數字,%f 表示以浮點數方式顯示。
以字符串作為分隔符的打印序列
seq 命令打印的序列中的每一個數字之間其實是有分隔符的,默認情況下,分隔符為換行符,所以上面的例子總是換行打印下一個數字。我們可以使用 -s 選項來指定分隔符。看下面的例子:
$ seq -s ':' 4
1:2:3:4
上述命令中用于分隔符上面的引號不是必須的,但作為一個好習慣,也為了讓命令看起來更好理解,我們一般都使用這個引號。
seq 命令的實際應用
上面我們介紹的例子,看起來像是一些在學習某編程語言中的練習,那么,seq 有什么實際的用途呢?實際上,我們在很多情況下都有可能會用到它。
比如,bash 中的 for 循環就可以使用 seq 命令,這樣就可以不必在循環條件中手動指定序列了。看下面的例子:
#!/bin/bash
for i in $(seq 4 2 18)
do
echo "Number $i"
done
我們將上述 bash 腳本放到一個名為 seq.sh 的文件中,運行該文件,它將執行循環打印,如下:
$ bash seq.sh
Number 4
Number 6
Number 8
Number 10
Number 12
Number 14
Number 16
Number 18
以上就是關于 seq 命令的主要用法,大家感興趣可以參考 man 手冊來查看它更多詳細的信息。
審核編輯:劉清
-
字符串
+關注
關注
1文章
577瀏覽量
20485 -
bash終端
+關注
關注
0文章
7瀏覽量
1991
發布評論請先 登錄
相關推薦
評論