$ for i in {1..11}; do echo hostxxx-$i; done
hostxxx-1
hostxxx-2
hostxxx-3
hostxxx-4
hostxxx-5
hostxxx-6
hostxxx-7
hostxxx-8
hostxxx-9
hostxxx-10
hostxxx-11
$ for i in {01..11}; do echo hostxxx-$i; done
hostxxx-01
hostxxx-02
hostxxx-03
hostxxx-04
hostxxx-05
hostxxx-06
hostxxx-07
hostxxx-08
hostxxx-09
hostxxx-10
hostxxx-11
Giả sử bạn cần thao tác với các host có tên cùng scheme và đánh số như trên, dùng bash expansion giúp giải quyết vấn đề sinh số liên tục. Bash đủ thông minh để hiểu bạn cần 01 hay 1.
Ví dụ trên nói lên tất cả.
Hết :3
$ echo {1..10..2}
ReplyDelete1 3 5 7 9
với
2 là khoảng cách giữa các phần tử được expand
Brace expansion is performed before any other expansions, and any characters special to other expansions are preserved in the result. It is strictly textual. Bash does not apply any syntactic interpretation to the context of the expansion or the text between the braces.
ReplyDelete