DAY3,C高级(shell中的变量、数组、算术运算、分支结构)

1.整理思维导图;

 

2.判断家目录下,普通文件的个数和目录文件的个数;

  1 #!/bin/bash2 arr1=(`ls -la ~/ | cut -d 'r' -f 1 | grep -w '-'`)3 arr2=(`ls -la ~/ | cut -d 'r' -f 1 | grep -w 'd'`)4 echo "普通文件个数:${#arr1[*]}"5 echo "目录文件个数:${#arr2[*]}"

 

 

3.输入一个文件名,判断是否为shell脚本文件,如果是脚本文件,判断是否有可执行权限,如果有可执行权限,运行文件,如果没有可执行权限,给文件添加可执行权限;

  1 #!/bin/bash2 read -p "输入文件名:" fname3 4 if [[ $fname == *".sh" ]]                                                                       5 then6     echo "是脚本文件"7     if [ -x $fname ]8     then9         bash $fname10     else11         sudo chmod a+x $fname12     fi13 14 else15     echo "不是脚本文件"16 fi

 

 

4.终端输入两文件名,判断哪一个文件更新;

  1 #!/bin/bash                                                                                     2 read -p "输入两个文件:" file1 file23 4 if [ $file1 -nt $file2 ]5 then6     echo "$file1比$file2更新"7 else8     echo "$file2比$file1更新"9 fi

 

5.终端输入用户,判断用户是否存在,如果不存在,添加用户;

  1 #!/bin/bash                                                                                     2 read -p "输入用户:" user3 4 str=`grep -w $user /etc/passwd | cut -d : -f 1`5 6 if [[ $user != $str ]]7 then8     echo "用户不存在,创建---"9     sudo adduser $user10 else11     echo "用户存在"12 fi

 

6.输入学生成绩,判断等级,;A[100,90),B[90,80),C[80,70),D[70,60)

  1 #!/bin/bash                                                                                     2 read -p "输入学生成绩:" score3 4 if [ $score -ge 90 ]5 then6     echo "A"7 elif [ $score -ge 80 ]8 then9     echo "B"10 elif [ $score -ge 70 ]11 then12     echo "C"13 elif [ $score -ge 60 ]14 then15     echo "D"16 else17     echo "E"18 fi

 

7.写一个shell脚本,获取当前用户名,用户id和工作路径;

  1 #!/bin/bash                                                                                     2 user=`whoami`3 echo "用户名:$user"4 echo "用户id:`id -u $user`"5 echo "工作路径:`pwd`"

 

8.统计/etc目录下以P或p开头的文件个数;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/52696.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【PostgreSQL】系列之 一 schema详解(二)

🍁 博主 "开着拖拉机回家"带您 Go to New World.✨🍁 🦄 个人主页——🎐开着拖拉机回家_Linux,Java基础学习,大数据运维-CSDN博客 🎐✨🍁 🪁🍁 希望本文能够给您带来一定的…

操作系统需要重点关注指标

机器层面的监控分为两部分,带内监控和带外监控。带内监控就是通过带内网络来监控,主要是以在 OS 里部署 Agent 的方式,来获取 OS 的 CPU、内存、磁盘、IO、网络、进程等相关监控指标。 外监控走的是带外网络,通常和业务网络不互通…

【图像去噪】基于原始对偶算法优化的TV-L1模型进行图像去噪研究(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

STM32基础回顾

文章目录 单片机编程的原理GPIO中断EXTI外部中断定时器中断、串口中断 定时器定时器中断配置过程通用定时器输出比较功能:PWM波的生成定时器的输入捕获功能主从触发模式PWMI模式 定时器的编码器接口 DMA简介通信接口USART软件配置流程:1、仅发数据的配置…

交互流程图设计软件都有哪些?

交互流程图是设计行业信息流、观点流或组件流的图形代表。但是市场上应该如何选择各种交互流程图软件呢?如何使用高质量的交互流程图软件来绘制高端氛围的高档流程图?今天,小边给您带来了十个超级实用的交互流程图软件,我希望能帮…

Java中的SPI机制与扫描class原理

文章目录 前言ClassLoaderJAVA SPI机制Spring SPI机制示例原理 如何加载jar包里的class 前言 Java的SPI机制与Spring中的SPI机制是如何实现的? ClassLoader 这里涉及到了class Loader的机制,有些复杂,jdk中提供默认3个class Loader&#x…

解决在mybatis中使用class属性绑定映射文件出现的异常问题~

如下所示&#xff0c;当我在XML文件中通过class属性配置其mapper文件时&#xff0c;出现下述错误 <mappers><mapper class"mappers.userMapper"/> </mappers>错误描述&#xff1a; 解决方法如下所示&#xff1a;在pom.xml文件中添加下述代码 <…

【广州华锐视点】葡萄种植VR虚拟仿真实训平台

随着虚拟现实(VR)技术的不断发展&#xff0c;越来越多的教育领域开始尝试将VR技术应用于教学中。在葡萄栽培这一专业领域&#xff0c;我们开发了一款创新的VR实训课件&#xff0c;旨在为学生提供沉浸式的互动学习体验。本篇文案将为您介绍葡萄种植VR虚拟仿真实训平台所提供的互…

Leetcode-每日一题【剑指 Offer 06. 从尾到头打印链表】

题目 输入一个链表的头节点&#xff0c;从尾到头反过来返回每个节点的值&#xff08;用数组返回&#xff09;。 示例 1&#xff1a; 输入&#xff1a;head [1,3,2]输出&#xff1a;[2,3,1] 限制&#xff1a; 0 < 链表长度 < 10000 解题思路 1.题目要求我们从尾到头反过…

AOP获取切点表达式中注解的属性

文章目录 1、获取Cacheable注解的属性2、获取自定义注解的属性 1、获取Cacheable注解的属性 有个小需求&#xff0c;要在日志中打印支持redis缓存的方法的相关信息&#xff0c;这里切点表达式动词用annotation&#xff0c;后面跟Cacheable注解 Component Aspect Slf4j public…

Curve深陷安全事件,OKLink如何破局

出品&#xff5c;欧科云链研究院 作者&#xff5c;Matthew Lee 7月31号&#xff0c;Curve 在平台表示 Vyper 0.2.15 的稳定币池由于编译器的漏洞所以遭到攻击。具体因为重入锁功能的失效&#xff0c;所以黑客可以轻易发动重入攻击&#xff0c;即允许攻击者在单次交易中执行某…

神策新一代分析引擎架构演进

近日&#xff0c;神策数据已经推出全新的神策分析 2.5 版本&#xff0c;该版本支持分析模型与外部数据的融合性接入&#xff0c;构建全域数据融合模型&#xff0c;实现从用户到经营的全链路、全场景分析。新版本的神策分析能够为企业提供更全面、更有效的市场信息和经营策略&am…