Linux中國
使用 Linux seq 命令生成數字序列
在 Linux 中生成數字列表的最簡單方法之一是使用 seq( 系列 )命令。其最簡單的形式是,seq 接收一個數字參數,並輸出從 1 到該數字的列表。例如:
$ seq 5
1
2
3
4
5
除非另有指定,否則 seq 始終以 1 開頭。你可以在最終數字前面插上不同數字開始一個序列。
$ seq 3 5
3
4
5
指定增量
你還可以指定增量步幅。假設你要列出 3 的倍數。指定起點(在此示例中為第一個 3 ),增量(第二個 3)和終點(18)。
$ seq 3 3 18
3
6
9
12
15
18
你可以選擇使用負增量(即減量)將數字從大變小。
$ seq 18 -3 3
18
15
12
9
6
3
seq 命令也非常快。你或許可以在 10 秒內生成一百萬個數字的列表。
$ time seq 1000000
1
2
3
…
…
999998
999999
1000000
real 0m9.290s <== 9+ seconds
user 0m0.020s
sys 0m0.899s
使用分隔符
另一個非常有用的選項是使用分隔符。你可以插入逗號、冒號或其他一些字元,而不是在每行上列出單個數字。-s 選項後跟要使用的字元。
$ seq -s: 3 3 18
3:6:9:12:15:18
實際上,如果只是希望將數字列在一行上,那麼可以使用空格代替默認的換行符。
$ seq -s' ' 3 3 18
3 6 9 12 15 18
開始數學運算
從生成數字序列到進行數學運算似乎是一個巨大的飛躍,但是有了正確的分隔符,seq 可以輕鬆地傳遞給 bc 進行計算。例如:
$ seq -s* 5 | bc
120
該命令中發生了什麼?讓我們來看看。首先,seq 生成一個數字列表,並使用 * 作為分隔符。
$ seq -s* 5
1*2*3*4*5
然後,它將字元串傳遞給計算器(bc),計算器立即將數字相乘。你可以在不到一秒的時間內進行相當龐大的計算。
$ time seq -s* 117 | bc
39699371608087208954019596294986306477904063601683223011297484643104
22041758630649341780708631240196854767624444057168110272995649603642
560353748940315749184568295424000000000000000000000000000
real 0m0.003s
user 0m0.004s
sys 0m0.000s
局限性
你只能選擇一個分隔符,因此計算將非常有限。而單獨使用 bc 可進行更複雜的數學運算。此外,seq 僅適用於數字。要生成單個字母的序列,請改用如下命令:
$ echo {a..g}
a b c d e f g
作者:Sandra Henry-Stocker 選題:lujun9972 譯者:geekpi 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive
對這篇文章感覺如何?
太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
More in:Linux中國
捐贈 Let's Encrypt,共建安全的互聯網
隨著 Mozilla、蘋果和谷歌對沃通和 StartCom 這兩家 CA 公司處罰落定,很多使用這兩家 CA 所簽發證書的網站紛紛尋求新的證書籤發商。有一個非盈利組織可以為大家提供了免費、可靠和安全的 SSL 證書服務,這就是 Let's Encrypt 項目。現在,它需要您的幫助
Let's Encrypt 正式發布,已經保護 380 萬個域名
由於 Let's Encrypt 讓安裝 X.509 TLS 證書變得非常簡單,所以這個數量增長迅猛。
關於Linux防火牆iptables的面試問答
Nishita Agarwal是Tecmint的用戶,她將分享關於她剛剛經歷的一家公司(印度的一家私人公司Pune)的面試經驗。在面試中她被問及許多不同的問題,但她是iptables方面的專家,因此她想分享這些關於iptables的問題和相應的答案給那些以後可能會進行相關面試的人。 所有的問題和相應的答案都基於Nishita Agarwal的記憶並經過了重寫。 嗨,朋友!我叫Nishita Agarwal。我已經取得了理學學士學位,我的專業集中在UNIX和它的變種(BSD,Linux)。它們一直深深的吸引著我。我在存儲方面有1年多的經驗。我正在尋求職業上的變化,並將供職於印度的P
Lets Encrypt 已被所有主流瀏覽器所信任
旨在讓每個網站都能使用 HTTPS 加密的非贏利組織 Lets Encrypt 已經得了 IdenTrust的交叉簽名,這意味著其證書現在已經可以被所有主流的瀏覽器所信任。從這個裡程碑事件開始,訪問者訪問使用了Lets Encrypt 證書的網站不再需要特別配置就可以得到 HTTPS 安全保護了。 Lets Encrypt 的兩個中級證書 ...

















