[ShellScript] Hướng dẫn xuất ra chuỗi chữ cái liền kề hoặc số liền kề trong Bash Shell

954

Khi lập trình bash shell trên Linux, bạn có nhu cầu cần in output thứ tự của 1 dãy số liền kề hoặc 1 dãy chữ cái liền kề thì bạn sẽ làm thế nào ? Ở đây mình sẽ bày 2 cách gồm :
– Sử dụng lệnh ‘seq
– Sử dụng cấu trúc ‘{..}

 
1. Sử dụng lệnh ‘seq’

– Mình sẽ đưa ra các ví dụ cụ thể cho dễ hiểu luôn.
– Nhược điểm : lệnh ‘seq’ chỉ dùng để in số thôi, không in được kí tự chữ cái ra và cũng không in ngược chiều được.

+ In dãy số liền kề từ 1 đến 10

# seq 1 10
1
2
3
4
5
6
7
8
9
10

 
+ In dãy số cách nhau 1 số

# seq 0 2 15
0
2
4
6
8
10
12
14

 
2. Sử dụng cấu trúc ‘{..}’

– Đây là cấu trúc để thực thi, chứ không phải lệnh thực thi.
– Dùng in được cả số, cả chữ hoa lẫn chữ thường.
– In ngược chiều được.
– Hạn chế không in cách số được.

 
+ In dãy số liền kề từ 1 đến 10 (và ngược chiều in)

# echo {1..10}
1 2 3 4 5 6 7 8 9 10
# echo {10..1}
10 9 8 7 6 5 4 3 2 1

 
+ In dãy kí tự chữ cái liền kề (và ngược chiều in)

# echo {a..l}
a b c d e f g h i j k l
# echo {A..L}
A B C D E F G H I J K L
# echo {l..a}
l k j i h g f e d c b a
# echo {L..A}
L K J I H G F E D C B A

 
3. Trường hợp khác dùng với ‘{..}’

+ Vòng lặp ‘for’

# for i in {106..99}; do echo $i; done

 
+ Tạo folder/files

# mkdir -p test/{1..10}/{1..10}

 
He, cám ơn các bạn đã theo dõi bài viết. Nếu có bất kì vấn đề cần trao đổi thì comment dưới bài viết nhé.

Previous article[CodePHP] Code PHP kiểm tra chức năng gửi mail trên SharedHosting/VPS/Server
Next article[Ebook] CCNA R&S ICND1 100-105 & ICND2 200-105 Official Cert Guide (2016) – Download PDF
Bạn đang theo dõi website "https://cuongquach.com/" nơi lưu trữ những kiến thức tổng hợp và chia sẻ cá nhân về Quản Trị Hệ Thống Dịch Vụ & Mạng, được xây dựng lại dưới nền tảng kinh nghiệm của bản thân mình, Quách Chí Cường. Hy vọng bạn sẽ thích nơi này !

LEAVE A REPLY

Please enter your comment!
Please enter your name here