Shell中SEQ妙用

來源:互聯網
上載者:User

標籤:shell中seq妙用

大量新增20個使用者到class01組,使用者名稱以std開頭,以數字結尾,格式:std01---std20
方法1

#!/bin/shgroupadd class01a=stdfor ((i=1;i<=20;i++))doif [ $i -lt 10 ];thenusername="$a"0"$i"elseusername=$a$ifiuseradd -G class01 -M  $usernamedone

方法2:

#!/bin/bashgroupadd class01for i in {1..20}doif  [ $i -lt 10 ];thenuseradd "std0$i" -g class01elseuseradd "std$i" -g class01fidone

方法3:  此方法最簡單高效,善用seq,會有意想不到效果
for i in `seq -w 20`;do useradd -G class01 sdt$i;done

seq的參數:
-f, --format=FORMAT      use printf style floating-point FORMAT (default: %g)
-s, --separator=STRING   use STRING to separate numbers (default: /n)
-w, --equal-width        equalize width by padding with leading zeroes
-f 選項   指定格式

seq -f"%3g" 1 10
% 後面指定數位位元 預設是"%g",
"%3g"那麼數字位元不足部分是空格

# seq -f"%03g" 1 11
001
002
003
004
005
006
007
008
009
010
011
% 前面指定字串,sed -f"%03g" 1 11 這樣的話數字位元不足部分是0

# seq -f "test%03g" 8 12
test008
test009
test010
test011
test012

-w 指定輸出數字同寬   不能和-f一起用
# seq -w 1 10
輸出是同寬的

本文出自 “boyhack” 部落格,請務必保留此出處http://461205160.blog.51cto.com/274918/1920294

Shell中SEQ妙用

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.