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.自己整理分文件编译,改之前写过的代码

相关推荐
Maple_land1 天前
Linux复习:冯·诺依曼体系下的计算机本质:存储分级与IO效率的底层逻辑
linux·运维·服务器·c++·centos
李的阿洁1 天前
k8s中的容器服务
linux·容器·kubernetes
谢景行^顾1 天前
数据结构知识掌握
linux·数据结构·算法
人工智能训练1 天前
如何在 Ubuntu 22.04 中安装 Docker 引擎和 Linux 版 Docker Desktop 桌面软件
linux·运维·服务器·数据库·ubuntu·docker·ai编程
Maple_land1 天前
Linux复习:系统调用与fork
linux·运维·服务器·c++·centos
无聊的小坏坏1 天前
Poll 服务器实战教学:从 Select 迁移到更高效的多路复用
linux·服务器·poll·io多路复用
WAsbry1 天前
InputConnection机制与跨进程文本操作的工程实践
android·linux
wdfk_prog1 天前
[Linux]学习笔记系列 -- [kernel]cpu
linux·笔记·学习
WAsbry1 天前
从一个Bug看Android文本编辑的设计缺陷
android·linux
大聪明-PLUS1 天前
Linux 中 timeout、watch 和 at 的指南:管理命令执行时间
linux·嵌入式·arm·smarc