0
我要打破有遵循這種風格多行的文件:新手的bash腳本
e-mail;year/month/date;groups;sharedFolder
從文件的一個示例行:
[email protected];1912/06/23;visitor;/visitorData
基本上我想打破所有行分成四個數組,可以在循環中稍後訪問,爲每條線創建一個新用戶。
我已經聲明數組已經保存爲變量「文件名」
用戶名必須是姓氏的前三個字母和名字的前三個字母的文件。
密碼需要以用戶的生日作爲日/月/年。
到目前爲止,這是我的。我在正確的軌道上嗎?有哪些地方我出錯或可以改善?
#reads file and saves into appropriate arrays
while read -r line
do
IFS = $';' read -r -a array <<< "$line"
mailArray += "$(array[0])"
dateArray += "$(array[1])"
groupArray += "$(array[2])"
folderArray += "$(array[3])"
done < $filename
#create usernames from emails
for i in "$(mailArray[@])"
do
IFS=$'.' read -r -a array <<< "$i"
part1 = ${array[0]:0:3}
part2 = ${array[1]:0:3}
user = $part2
user .= $part1
userArray += ("$user")
done
#create passwords from birthdates
for i in "$(dateArray[@])"
do
IFS=$'/' read -r -a array <<< "$i"
password = $part3
password .= $part2
password .= $part1
passArray += ("$password")
done
任何使用數組並將它們存儲在文件中的原因?爲什麼不在讀取時處理一行? – xvan
我認爲這個問題可能會在[Code Review Stack Exchange](http://codereview.stackexchange.com/)中得到更好的回答。 –