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

相关推荐
qeen8718 分钟前
【Linux】Linux环境下的进程终止与进程等待问题
linux·运维·服务器
LRL_2 小时前
【实战指南】Node.js 跨平台依赖下载:如何在 Windows/Linux 环境下互跨下载目标系统的 npm/pnpm 包
linux·windows·node.js
高山有多高2 小时前
【Linux笔记】网络命令
linux
一条破秋裤3 小时前
Linux 线程同步:读写锁
java·linux·jvm
工作10年+,存储芯片行业3 小时前
Linux NVMe 中断排查与性能优化:IRQ 优化(原理+排查)
linux·运维·性能优化·ssd·nvme·pcie·中断
宵时待雨4 小时前
linux笔记归纳25:多路转接epoll
linux·服务器·网络·c++
geats人山人海4 小时前
linux 1.目录结构
linux·运维·服务器
wuminyu4 小时前
JEP491中synchronized关键字引发的平台线程钉住解决方法简介
java·linux·c语言·jvm·c++
应用市场4 小时前
嵌入式Linux从裸板到产品(一):全景地图与交叉编译环境,从四个上板翻车现场说
linux·运维·服务器
皓月盈江4 小时前
Linux系统PC与Linux系统服务器通过scp上传与下载文件
linux·运维·服务器·scp·文件上传·文件下载