我试图从名为“ accounts.list”的.list文件中提取信息,并在CentOS 7的命令行操作中使用提取的信息。我知道有一个简单的解决方案,但我终生无法找到它。
因此,文件的每一行均以以下格式列出:
John Smith | jsmith
Jane Doe | jdoe
我需要做的是向用户添加每行的信息。因此,例如,我想将每个部分添加到变量中,然后在adduser命令中使用该变量:
fn=John
ln=Smith
un=jsmith
useradd -c "$fn $ln" $un
因此,我需要遍历每一行并提取该信息,添加用户,然后继续进行下一行。我想以最简单的方式做到这一点,但是我尝试过的任何方法都没有奏效,任何帮助将不胜感激。
while read -r fn ln ignore un; do useradd -c "$fn $ln" "$un"; done <accounts.list
或者,如果您希望将命令分布在多行中,请执行以下操作:
while read -r fn ln ignore un
do
useradd -c "$fn $ln" "$un"
done <accounts.list
文件的每一行都有四个字段:名字(fn),姓氏(ln),竖线和用户名(un)。该命令read
从输入文件中的行由行读取和这四个字段分配给变量fn
,ln
,ignore
,和un
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句