您的位置:首页 > 运维架构 > Shell

【Linux】Shell - 脚本练习 - 截取文件内容

2017-06-16 15:28 826 查看
写一个脚本

依次向/etc/passwd中的每个用户问好,并且说出对方的ID是什么

例如:Hello root, your UID is0.

方法1:使用awk指定分隔符

cat /etc/passwd | awk -F ":" '{print "Hello " $1 ", your UID is " $3 }';
# awk -F ":" '{print "Hello " $1 ", your UID is " $3 }' /etc/passwd# 以冒号作为分隔符,打印第1,3项内容

方法2:使用cut分割每行内容

# /bin/bash

FILE=/etc/passwd
LINES=`wc -l ${FILE} | cut -d" " -f1` # 获取文件行数

for I in `seq 1 ${LINES}` # 生成"1 2 3 4 ..." 数组,循环处理每行内容
do
currentline=`head -${I} ${FILE} | tail -n1` # 获取当前行内容
username=`echo ${currentline} | cut -d: -f1` # 获取用户名,以冒号作为分隔符的第1项
userid=`echo ${currentline} | cut -d: -f3` # 获取用户ID,以冒号作为分隔符的第3项
echo "hello $username,your UID is $userid" # 输入内容
done

exit 0;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: