คู่มือนี้จะแสดงวิธีการใช้คำสั่ง seq เพื่อสร้างรายการหมายเลขภายใน terminal Linux
ไวยากรณ์พื้นฐานของคำสั่ง Seq
นึกว่าคุณต้องการแสดงหมายเลข 1 ถึง 20 ไปที่หน้าจอ
คำสั่ง seq ต่อไปนี้แสดงวิธีการดังต่อไปนี้:
ต่อจากนี้ 1 20
ด้วยตัวเองคำสั่งนี้ค่อนข้างไร้ประโยชน์ อย่างน้อยที่สุดคุณจะต้องการส่งออกตัวเลขไปยังแฟ้ม
คุณสามารถทำเช่นนี้ได้โดยใช้ คำสั่ง cat ดังนี้:
ต่อไปนี้ 1 20 | cat> numberedfile
ตอนนี้คุณจะมีไฟล์ชื่อ numberedfile ซึ่งมีตัวเลขตั้งแต่ 1 ถึง 20 ที่พิมพ์อยู่ในแต่ละบรรทัด
วิธีการที่เราได้แสดงให้เห็นว่าตอนนี้สำหรับการแสดงลำดับของตัวเลขอาจได้รับการควบแน่นเป็นดังต่อไปนี้:
ต่อ 20
หมายเลขเริ่มต้นเริ่มต้นคือ 1 ดังนั้นโดยเพียงแค่จัดหาหมายเลข 20 คำสั่ง seq จะนับโดยอัตโนมัติตั้งแต่ 1 ถึง 20
คุณจำเป็นต้องใช้รูปแบบยาวหากคุณต้องการนับระหว่างสองตัวเลขที่แตกต่างกันดังนี้:
ตอนที่ 35 45
ซึ่งจะแสดงตัวเลขตั้งแต่ 35 ถึง 45 ไปยังเอาต์พุตมาตรฐาน
วิธีตั้งค่าเพิ่มโดยใช้คำสั่ง Seq
ถ้าคุณต้องการแสดงตัวเลขทั้งหมดระหว่าง 1 ถึง 100 คุณสามารถใช้ส่วนที่เพิ่มขึ้นของ SEQ ไปจนถึงขั้นตอนที่ 2 ได้ในแต่ละครั้งตามตัวอย่างต่อไปนี้:
ตามด้วย 2 2 100
ในคำสั่งข้างต้นหมายเลขแรกเป็นจุดเริ่มต้น
หมายเลขที่สองคือจำนวนที่เพิ่มขึ้นในแต่ละขั้นตอนเช่น 2 4 6 8 10
หมายเลขที่สามคือจำนวนสุดท้ายที่ต้องนับ
การจัดรูปแบบคำสั่ง Seq
เพียงแค่ส่งตัวเลขไปยังจอแสดงผลหรือไฟล์ไม่ได้เป็นประโยชน์อย่างยิ่ง
อย่างไรก็ตามบางทีคุณอาจต้องการสร้างไฟล์ด้วยวันที่ทุกเดือนมีนาคม
เมื่อต้องการทำเช่นนี้คุณสามารถใช้สวิตช์ต่อไปนี้:
seq -f "% 02g / 03/2016" 31
ซึ่งจะแสดงผลลัพธ์เหมือนกับข้อความต่อไปนี้:
- 2016/01/03
- 2016/02/03
- 2016/03/03
คุณจะสังเกตเห็น% 02g มีรูปแบบที่แตกต่างกันสามรูปแบบคือ e, f และ g
เป็นตัวอย่างของสิ่งที่เกิดขึ้นเมื่อคุณใช้รูปแบบที่แตกต่างกันเหล่านี้ลองคำสั่งต่อไปนี้:
seq -f "% e" 1 0.5 3
seq -f "% f" 1 0.5 3
seq -f "% g" 1 0.5 3
ผลลัพธ์จาก% e มีดังนี้:
- 1.000000e + 00
- 1.500000e + 00
- 2.000000e + 00
- 2.500000e + 00
- 3.000000e + 00
ผลลัพธ์จาก% f มีดังนี้:
- 1.000000
- 1.500000
- 2.000000
- 2.500000
- 3.000000
สุดท้ายผลลัพธ์จาก% g จะเป็นดังนี้:
- 1
- 1.5
- 2
- 2.5
- 3
การใช้คำสั่ง Seq เป็นส่วนหนึ่งของการวนรอบ
คุณสามารถใช้คำสั่ง seq เป็นส่วนหนึ่งของ ลูปสำหรับ เรียกใช้รหัสเดียวกันจำนวนครั้งที่กำหนดได้
ตัวอย่างเช่นสมมติว่าคุณต้องการแสดงคำว่า "hello world" สิบครั้ง
นี่คือวิธีที่คุณสามารถทำได้:
สำหรับ i in $ (seq 10)
ทำ
echo "สวัสดีโลก"
เสร็จแล้ว
เปลี่ยนตัวคั่นลำดับ
โดยค่าเริ่มต้นคำสั่ง seq จะแสดงตัวเลขแต่ละบรรทัดในบรรทัดใหม่
ซึ่งสามารถเปลี่ยนเป็นตัวคั่นด้วยอักขระใดก็ได้ที่คุณต้องการใช้
ตัวอย่างเช่นหากคุณต้องการใช้เครื่องหมายจุลภาคเพื่อแยกตัวเลขให้ใช้ไวยากรณ์ต่อไปนี้:
seq -s, 10
ถ้าคุณต้องการใช้พื้นที่คุณต้องใส่คำพูด:
seq -s "" 10
ทำลำดับลำดับความยาวเดียวกัน
เมื่อคุณส่งออกตัวเลขไปยังแฟ้มที่คุณอาจจะรำคาญที่เมื่อคุณก้าวขึ้นผ่านนับและหลายร้อยที่ตัวเลขมีความยาวแตกต่างกัน
ตัวอย่างเช่น:
- 1
- 2
- 3
- 10
- 11
- 99
- 100
- 200
- 1000
- 10000
คุณสามารถทำตัวเลขทั้งหมดที่มีความยาวเช่นเดียวกับ:
seq-10000
เมื่อคุณเรียกใช้คำสั่งดังกล่าวเอาท์พุทจะเป็นดังนี้:
- 00001
- 00002
- 00003
- 00010
- 00011
- 00099
- 00100
- 00200
- 01000
- 10000
แสดงหมายเลขในการสั่งซื้อย้อนกลับ
คุณสามารถแสดงตัวเลขในลำดับตามลําดับ
ตัวอย่างเช่นถ้าคุณต้องการแสดงตัวเลข 10 ถึง 1 คุณสามารถใช้ไวยากรณ์ต่อไปนี้:
seq 10 -1 1
ตัวเลขลอยตัว
คุณสามารถใช้คำสั่งลำดับในการทำงานกับตัวเลขจุดลอยด้วย
ตัวอย่างเช่นถ้าคุณต้องการแสดงตัวเลขทุกช่วงระหว่าง 0 ถึง 1 ด้วยขั้นตอน 0.1 คุณสามารถทำได้ดังนี้:
seq 0 0.1 1
สรุป
คำสั่ง seq มีประโยชน์มากขึ้นเมื่อใช้เป็นส่วนหนึ่งของ สคริปต์ทุบตี