9.27作业

1..在家目录/home/ubuntu 下创建两个目录文件 file_dir 和 dir_dir,如果家目录下有这两个文件夹,就 不需要创建,询问用户是否要对目录清空[Y/N], 输入一个文件路径,判断这个文件路径是否存在,如 果存在,把这个目录下的目录文件复制到 dir_dir 中,如果是其他文 件,复制到 file_dir 下,统计复制 的文件和目录文件的个数,并打印出来。

#! /bin/bash 
read -p "是否清空file_dir和dir_dir[Y/N]" val
if [ $val == y -o $val == Y ]
then
	cd /home/ubuntu/file_dir/	
	rm  *
	cd /home/ubuntu/dir_dir/
	rm -r *
	read -p "请输入路径" val1
	if [ -d $val1 ]
	then
		cd $val1
		arr=(`ls`)
		val2=`echo ${#arr[*]}`
		count=0
		for(( i=0;i < $val2; i ++ ))  
			{
				brr=`echo ${arr[$i]}`
				if [ -d $brr ]
				then
					count=$[$count+1]
					cp -r $brr  /home/ubuntu/dir_dir/  
				else
					cp $brr  /home/ubuntu/file_dir/
				fi
			}
			echo 目录文件有$count个。
			echo 其他文件有$[ val2 - count ]个。
		else 
			echo 路径不合法
		fi
 else
	read -p "请输入路径" val1
	if [ -d $val1 ]
	then
		cd $val1
		arr=(`ls`)
		val2=`echo ${#arr[*]}`
		count=0
		for(( i=0;i < $val2; i ++ ))  
			{
				brr=`echo ${arr[$i]}`
				if [ -d $brr ]
				then
					count=$[$count+1] 
					cp -r $brr  /home/ubuntu/dir_dir/  
				else
					cp $brr  /home/ubuntu/file_dir/
				fi
			}
			echo 目录文件有$count个。
			echo 其他文件有$[ val2 - count ]个。
		else 
			echo 路径不合法
		fi
	fi   

2.在终端输入一个文件名,判断文件是否为空,如果不为空,判断文件是否是普通文件,如果是普通文 件,就判断是否具有写权限,没有写权限,就加上写权限,并在文件最后追加一行”hello world“

#! /bin/bash
read -p "请输入文件名" val
if [ -e $val ]
then
	if [ -s $val ]
	then
		if [ -f $val ]
		then 
			if [ -w $val ]
			then
				echo "hello world">>$val
			else
				chmod u+w $val
				echo "hello world">>$val
			fi
		else
			echo 文件不是普通文件
		fi
	else
		echo 文件为空文件
	fi
else
	echo 文件不存在
fi

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值