标签:bin 文件 SHELL 每天 一小 echo etc pa bash
题目:
1、取出/etc/inittab文件的第6行;
2、取出当前系统上所有用户的shell,要求,每种shell只显示一次,并且按顺序进行显示;
使用cut、sort结合管道实现
3、如果/var/log/messages文件的行数大于100,就显示好大的文件
4、显示/etc目录下所有以pa开头的文件,并统计其个数
5、如果用户hadoop不存在就添加,否则显示用户已存在
6、编写一个 Shell 程序 test1,程序执行时从键盘读入一个目录名,然后 显示这个目录下所有文件的信息
7、编写一个 Shell 程序 test2,从键盘读入 x、y 的值,然后做加法运算,最后输出结果
解决:
1、取出/etc/inittab文件的第6行;
[root@bohe ~]# head -6 /etc/inittab |tail -1
#
2、取出当前系统上所有用户的shell,要求,每种shell只显示一次,并且按顺序进行显示;
使用cut、sort结合管道实现
[root@bohe ~]# cut -d : -f7 /etc/passwd |sort | uniq -c | sort -n
1 /bin/sync
1 /sbin/halt
1 sbin/nologin
1 /sbin/shutdown
3 /bin/bash
41 /sbin/nologin
3、如果/var/log/messages文件的行数大于100,就显示好大的文件
[root@bohe ~]# vim afile.sh +
#!/bin/bash
a=`wc -l /var/log/messages`
if [[ $a > 100 ]]
then
echo "好大的文件"
else
echo "/var/log/messages的行数为: $a"
fi
4、显示/etc目录下所有以pa开头的文件,并统计其个数
[root@bohe ~]# vim pa.sh +
#!/bin/bash
echo "/etc这个目录下所有以pa开头的文件有: "
find /etc/ -name "pa*" -type f
num=`find /etc/ -name "pa*" -type f | wc -l`
echo "文件的个数有: $num"
5、如果用户hadoop不存在就添加,否则显示用户已存在
[root@bohe ~]# vim usr.sh
#!/bin/bash
grep hadoop /etc/passwd > /dev/null
if [ $? -ne 0 ]
then
useradd hadoop
else
echo "用户已存在"
fi
6、编写一个 Shell 程序 test1,程序执行时从键盘读入一个目录名,然后 显示这个目录下所有文件的信息
#!/bin/bash
read -p "请输入一个目录名: " path
ls -l $path
7、编写一个 Shell 程序 test2,从键盘读入 x、y 的值,然后做加法运算,最后输出结果
#!/bin/bash
read -p "请输入第一个数字: " a
expr $a "+" 10 &>/dev/null
if [ $? -ne 0 ]
then
echo "请输入正确的数字a"
exit 0
else
read -p "请输入第二个数字: " b
expr $b "+" 10 &>/dev/null
if [ $? -ne 0 ]
then
sum=$[$a+$b]
echo "两个数相加之和为: $sum"
else
echo "请输入正确的数字y"
fi
fi
标签:bin,文件,SHELL,每天,一小,echo,etc,pa,bash 来源: https://blog.csdn.net/m0_50681983/article/details/120978069
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。