【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;
依次向/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;
相关文章推荐
- 【Linux】Shell - 脚本练习 - 获取文件某行的内容
- linux 将文件内容赋值给shell脚本中的变量
- linux 截取文件内容脚本
- LINUX shell脚本练习:备份文件(1)
- linux通过shell脚本修改文件内容
- linux中在多个文件中查找替换文本的shell脚本
- Linux系统关键文件备份shell脚本
- linux的shell脚本和dd命令把镜像文件写到SD卡上
- Linux下shell脚本判断文件相关属性
- 解决Linux下shell脚本文件执行失败问题
- Linux下使用Shell脚本删除一个目录下的所有子目录和文件
- Linux_shell脚本_遍历文件夹下所有文件
- Linux脚本(shell)编程(三) 文件操作
- 删除内容相同的文件并保留一份副本的shell脚本
- linux0.11是如何加载并执行一个二进制可执行文件和shell脚本文件的?
- Linux下使用Shell脚本向FTP服务器上传或下载一个文件
- shell脚本:修改包含特定内容的多个文件
- Linux下搜索指定内容的文件 shell命令备忘
- lunix下shell脚本批量获取文件,批量修改文件内容
- Linux用shell修改文件内容