我写一个程序,将数据的字段创建用户名和密码UNIX的格式化输出变量
下面是如何格式化数据
MWS1990 XXX-XX-XXXX STASNY, MATTHEW W SO-II BISS CPSC BS INFO TECH 412/882-0581
这里是程序
for linePosition in {11..22}
do
holder=`sed -n "${linePosition}p" $1|awk '{print $1}'`
holder2=`sed -n "${linePosition}p" $1|awk '{print $12}'`
holder3=`sed -n "${linePosition}p" $1|awk '{print $7}'`
echo "UserName"
echo "$holder"
echo "password"
echo "$holder2"
echo "$holder3"
done
它返回像这样的输出
UserName
MWS1990
password
412/882-0581
BISS
分
事情2的事情是错的是
我想它的用户名后删除的一年。因此,上述 示例将只是MWS。我可以添加到holder =`sed -n “$ {linePosition} p”$ 1 | awk'{print $ 1}'使其仅返回 的前3个字母。 (最好是小写,但不是必需的)
我想删除电话号码的前6个字母。因此,而不是412/882-0581 如果你正在使用bash的电话号码将改为
需要引用http://tldp.org/LDP/abs/html/string-manipulation.html我会写的页面提供一个答案来解释如何在不久的将来需要时提取字符串。 – 2013-02-17 22:31:19
@ rob-kielty:对不起,并不意味着劫持你的答案!看起来我在添加此评论后几秒钟点击“发布”。 – 2013-02-17 22:33:50
大声笑没关系。有多种方法来清理字符串。 :-我把你的答案和奥拉夫的投票结果投给了你。 – 2013-02-17 22:45:32