6.26作业

1.整理思维导图

2.统计家目录下.c文件的个数

bash 复制代码
ls ~/*.c | wc -l

3.终端输入一个.sh文件,判断文件是否由可执行权限,如果有可执行权限运行脚本,没有可执行权限添加可执行权限后,再运行脚本

bash 复制代码
#!/bin/bash
read -p "请输入一个.sh文件:" file
if [ -x "$file" ]
then
	bash $file
else
	chmod u+x $file
	bash $file
fi

4.写一个函数,输出当前用户uid和gid,并使用变量接收结果

bash 复制代码
#!/bin/bash 
function fun()
{
  echo `id -u`
  echo `id -g`
}
ret=`fun`
echo $ret

5.终端输入年月,判断该月有多少天,考虑闰平年的情况

bash 复制代码
#!/bin/bash
read -p "请输入年:" year
read -p "请输入月:" month
case $month in 
	2)
		if [ $((year%4)) -eq 0 ] && [ $((year%100)) -ne 0 ] || [ $((year%400)) -eq 0 ]
		then
			echo 29天
		else
			echo 28天
		fi
	    ;;
	4|6|9|11)
		echo 30天
		;;
	1|3|5|7|8|10|12)
		echo 31天
		;;
	*)
		echo error
esac	

6.使用for循环,输出九九乘法表( printf "%d * %d = %d" i j $((i*j)) )

bash 复制代码
#!/bin/bash
for i in {1..9}
do
	for ((j=1;j<=i;j++))
	do
		echo -ne  "$j×$i=$(($j*$i))\t"
	done
	echo
done

7.使用for循环,找到家目录下的所有.c文件,如果文件有内容编译该文件,如果文件中没有内容,删除文件

bash 复制代码
#!/bin/bash
for file in `ls ~/*.c`
do
	if [ -s $file ]
	then
		gcc $file
	else
		rm $file
	fi
done

8.自己整理分文件编译,改之前写过的代码

相关推荐
orion579 小时前
Missing Semester Class1:course overview and introduction of shell
linux
用户1204872216116 小时前
Linux驱动编译与加载
linux·嵌入式
用户805533698031 天前
Input 子系统架构:Core、Handler、Driver 三层是怎么协作的
linux·嵌入式
用户805533698031 天前
RK-Forge外设系列开篇 - 把板子从「能启动」变成「能用」:Ethernet/SPI/MMC 三个纯接线外设
linux·github·嵌入式
七歌杜金房1 天前
我终于又有了自己的 Linux 电脑
linux·debian·mac
tntxia2 天前
linux curl命令详解_curl详解
linux
扛枪的书生3 天前
Linux 网络管理器用法速查
linux
顺风尿一寸3 天前
Java Socket 内核之旅:从 SocketChannel.read() 到 tcp_recvmsg 与 epoll 的完整调用链路
linux
XIAOHEZIcode3 天前
Ubuntu 终端美化全栈指南:Bash 到 Kitty 踩坑实录
linux·ubuntu·命令行
唐青枫3 天前
别再只会用 cron:Linux systemd Timer 定时任务实战详解
linux