首页 > 系统相关 >linux作业

linux作业

时间:2023-04-14 23:34:08浏览次数:52  
标签:文件 YiBin notefile 作业 echo file linux fi

编写一个Shell脚本,根据键盘可以循环输入文件名,输入不存在文件或是目录名则提示后重新输入,按“q”或“Q”键退出。程序完成找出输入文件中所有含"YiBin"的行按格式“文件名,含YiBin的行”写入当前目录下文件notefile中。

while :
do
	
	read -p "input(q/Q退出 ):" file
	if [[ $file = "q" || $file = "Q" ]] #判断q/Q,退出循环
	then
	   exit
	fi

	find $file 1>/etc/null 2>&1 #保证代码运行界面简洁,将输出结果丢到黑洞文件
	if [ $? = 1 ] #判断最后一次命令的执行状态
	then
		echo "File is not here"
		continue 
	else
		echo "file is here"
		cat $file | grep "[Y]i[B]in" 1>/etc/null 2>&1 #查找是否有YiBin
		if [ $? = 1 ] 
		then
			echo "No YiBin in it"
			continue
		else
			for yb in `cat $file|grep "[Y]i[B]in"` #循环读取符合要求的行
				{
					echo $file $yb >> notefile #重定向到notefile文件
				}	
			echo "Finish write in notefile"
			break
		fi
	fi
		
done
```![在这里插入图片描述](/i/ll/?i=63c1afcf50a1435c89639fb480f54cef.png![在这里插入图片描述](/i/ll/?i=4ce0e1dc762849d1a0e031eceb46b008.png)

标签:文件,YiBin,notefile,作业,echo,file,linux,fi
From: https://blog.51cto.com/u_16058292/6191150

相关文章

  • #yyds干货盘点#Linux之find:查找目录下的文件
    【功能说明】find命令用于查找目录下的文件,同时也可以调用其他命令执行相应的操作。【语法格式】find[-H][-L][-P][-Ddebugopts][-olevel][pathname][expression]find[选项][路径][操作语句]1)注意find命令以及后面的选项和路径、操作语句,每个......
  • 【Windows / Linux】python 换 豆瓣源
    python换豆瓣源-直接运行Python代码即可 Windows版importospath=os.getenv('APPDATA')#获取环境变量data="""[global]timeout=6000index-url=http://pypi.douban.com/simple/trusted-host=pypi.douban.com"""#写入的数据fo......
  • WiFi协议曝安全漏洞:Linux、Android和iOS未能逃脱
    来自美国东北大学和鲁汶大学的学者披露了一组IEEE802.11Wi-Fi协议标准的一个基础设计漏洞,影响到运行Linux、FreeBSD、Android和iOS的各种设备。来自美国东北大学和鲁汶大学的学者披露了一组IEEE802.11Wi-Fi协议标准的一个基础设计漏洞,影响到运行Linux、FreeBSD、Androi......
  • WiFi协议曝安全漏洞:Linux、Android和iOS未能逃脱
    来自美国东北大学和鲁汶大学的学者披露了一组IEEE802.11Wi-Fi协议标准的一个基础设计漏洞,影响到运行Linux、FreeBSD、Android和iOS的各种设备。来自美国东北大学和鲁汶大学的学者披露了一组IEEE802.11Wi-Fi协议标准的一个基础设计漏洞,影响到运行Linux、FreeBSD、Androi......
  • WiFi协议曝安全漏洞:Linux、Android和iOS未能逃脱
    来自美国东北大学和鲁汶大学的学者披露了一组IEEE802.11Wi-Fi协议标准的一个基础设计漏洞,影响到运行Linux、FreeBSD、Android和iOS的各种设备。来自美国东北大学和鲁汶大学的学者披露了一组IEEE802.11Wi-Fi协议标准的一个基础设计漏洞,影响到运行Linux、FreeBSD、Androi......
  • How to use command line find all users on Linux All In One
    HowtousecommandlinefindallusersonLinuxAllInOneLinux系统中一切皆文件,就像js中一切皆对象一样/etc/passwd#password$cat/etc/passwdRaspberryPipi@raspberrypi:~$cat/etc/passwd|greppipi:x:1000:1000:,,,:/home/pi:/bin/bashpi@raspbe......
  • Linux离线安装nginx详细教程
    本文安装环境centos7.9一、什么是离线安装?使用离线安装包进行软件安装的方式就叫离线安装。离线安装包又叫做完整安装包,包含所有的安装文件。与其相对的是在线安装,即在条件允许且网络良好的条件下采用网络安装的方式。在线安装方式的缺点是在不太好的网络状况下容易出现长时......
  • 在 Linux 中使用 sFTP 上传或下载文件与文件夹
    导读sFTP(安全文件传输程序)是一种安全的交互式文件传输程序,其工作方式与FTP(文件传输协议)类似。然而,sFTP比FTP更安全;它通过加密SSH传输处理所有操作。它可以配置使用几个有用的SSH功能,如公钥认证和压缩。它连接并登录到指定的远程机器,然后切换到交互式命令模式,在......
  • Linux netstat命令详解
    Netstat是一款命令行工具,可用于列出系统上所有的网络套接字连接情况,包括tcp,udp以及unix套接字,另外它还能列出处于监听状态(即等待接入请求)的套接字。如果你想确认系统上的Web服务有没有起来,你可以查看80端口有没有打开。以上功能使netstat成为网管和系统管理员的必备利器......
  • Linux系统软件安装与控制软件启动关闭
    操作系统安装软件有许多方式,一般分为:下载安装包自行安装如win系统使用exe文件,msi文件等。如mac系统使用dmg文件,pkg文件等。不同的Linux系统发行版使用的安装包文件也可能不同,如CentOS使用的是.rpm文件,而Ubuntu使用的是.deb文件等。系统的应用商店内安装如win系统有Micr......