鸟哥的Linux私房菜基础学习篇(第…

题目:编写一支程序。它的作用是先查看一下/root/test/logical这个名称是否存在,。。。
程序:
#!/bin/bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
name=/root/test/logical
#touch $name
if [ -e $name ];then
    if [ -f $name ];then
        echo "该名称为文件!"
        rm $name
        mkdir $name
        exit 1
    fi
    if [ -d $name ];then
        echo "该名称为目录!"
        rmdir $name
        exit 1
    fi
else
    echo "该名称不存在!"
    touch $name
fi

题目:我们知道 /etc/passwd 中以 (:)来分隔,第一栏为账号名称,请编写程序,可以将/etc/passwd的第一列取出,而且每一行都以一行字符串“The 1 account is "root" ” 来显示,1,表示行数。
方案一:
#!/bin/bash
accounts=$(cat /etc/passwd | cut -d':' -f1);
for account in $accounts
do
    declare -i i=$i+1;
    echo "The $i account is \"$account\""
done
方案二:
#!/bin/bash
awk 'BEGIN {FS=":"} {printf "The %s account is \"%s\"\n",NR,$1}' /etc/passwd

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值