shell学习笔记(1):利用IFS打印用户和默认shell

本文介绍了一个Shell脚本实例,通过解析Linux的passwd文件来获取每个用户的默认shell。脚本使用IFS变量和for循环来处理每行数据,最终输出用户名及其对应的shell。

参考资料为:linux shell脚本攻略 作者sarath Lakshman 人民邮电出版社

shell:读取文件的每一行内容并输出 的写法1

目的:读取passwd文件,获得用户名和其默认的shell,并打印出来

首先cp /etc/passwd ./passwd_cp
shell脚本get_usr_shell.sh内容如下:

#!/bin/bash

function get_line_usr_shell(){
#    echo $#

    line="$1"
    oldIFS=$IFS

    IFS=":"
    count=0

    for item in $line
    do
        [ $count -eq 0 ] && user=$item
        [ $count -eq 6 ] && shell=$item
        let count++
    done
    IFS=$oldIFS
    echo $user\'s shell is $shell
}

if [ $# -gt 1 ]
then
    echo "parameter is more one in main"
    exit 1
fi

while read line
do
#    echo $line
    get_line_usr_shell $line
done < $1
shell脚本

然后在终端输入./get_usr_shell passwd_cp即可得到结果:

转载于:https://www.cnblogs.com/Shirlies/p/4168890.html

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值