john,123
peter,456
keven,789
(帳號,密碼)
======================================================
指令
cat account.csv| awk '{print $1}'
結果
john,123
peter,456
keven,789
說明:
awk 預設以空格做為分隔。文字檔因為無空格,所以全部當成同一欄。如果 print 後面是 $2,就會輸出三行空白,因為無內容。
======================================================
指令
cat account.csv| awk 'BEGIN{FS=","}{print $1,$2}'
結果
john 123
peter 456
keven 789
說明
1. FS 表示輸入內容的分隔字元。這裡意思是告訴系統,我要讀取的檔案是以逗號做分隔。
2. 它的輸出,預設仍然是空格,即便後面 print 兩個變數之間是以逗號分隔,只是代表輸出的時候這兩個變數要做分隔,不代表輸出的內容用逗號做分隔。
======================================================
指令
cat account.csv| awk 'BEGIN{FS=","; OFS=","}{print $1,$2}'
結果
指令
cat account.csv| awk 'BEGIN{FS=","; OFS=","}{print $1,$2}'
結果
john,123
peter,456
keven,789
說明
OFS 代表輸出的分隔字元。
======================================================
vi add.sh
#!/bin/bash
for i in `awk 'BEGIN{FS=","}{print $1}' account.csv`
do
useradd $i -g group -d /path/to/folder/$i -s /sbin/nologin
grep "\<$i\>" account.csv | awk 'BEGIN{FS=","}{print $2}' | passwd --stdin $i
done
沒有留言:
張貼留言