shell编程

Shell编程---函数部分

穿精又带淫゛_ 提交于 2020-02-15 07:22:23
1.Shell函数的本质 本质 是一段可以重复使用的脚本代码 这段代码被提前编写好了,放在指定的位置,使用时直接调取即可 Shell中的函数和C++、Jave、Python、C#等其他编程语言中的函数类似,只是在语法细节有所差别 2.Shell函数的语法格式 function name ( ) { statements [ return value ] } 关于各个部分的说明: function 是Shell中的关键字,专门用来定义函数 name 三个函数名 statements 是函数要执行的代码,也就是一组语句 return value 表示函数的返回值,其中return是Shell关键字,专门用在函数中返回一个值(用【】括起来的这一部分可以写也可以不写) 注意: 用{ }包围的部分成为函数体,调用一个函数,实际上就是执行函数体中的代码 3.函数定义的简化写法 简化写法1 函数定义时也可以不写function关键字 name ( ) { statements [ return value ] } 简化写法2 若写了function关键字,也可以省略函数名后面的小括号 function name { statements [ return value ] } 4.函数调用 调用Shell函数时可以给它传递参数,也可以不传递 如果不传递参数,直接给出函数名字即可: name

Shell编程之while循环和until循环

时光总嘲笑我的痴心妄想 提交于 2020-02-14 08:32:42
一、当型和直到型循环 1.while循环语句 while < 条件表达式 > do 指令... done while循环执行流程对应的逻辑图 2.until循环语句 until < 条件表达式 > do 指令... done until会在条件表达式不成立时,进入循环体执行指令。 3.基本范例 (1)每隔2秒输出一次系统负载 [root@codis-178 ~]# cat 10_1.sh #!/bin/bash while true do uptime sleep 2 done [root@codis-178 ~]# sh 10_1.sh 13:59:41 up 251 days, 22:33, 1 user, load average: 0.02, 0.03, 0.00 13:59:43 up 251 days, 22:33, 1 user, load average: 0.02, 0.03, 0.00 13:59:45 up 251 days, 22:33, 1 user, load average: 0.02, 0.03, 0.00 13:59:47 up 251 days, 22:33, 1 user, load average: 0.02, 0.03, 0.00 (2)防止脚本执行中断的办法 1)使用&,在后台运行 2)使用nohup加&,在后台运行 3

《网络攻防实践》寒假作业

≯℡__Kan透↙ 提交于 2020-02-11 18:31:13
目录 前言 作业一 作业二 基于VMWare安装虚拟机Ubuntu Linux命令 Linux基础入门 前言 这个作业属于那个课程 《网络攻防实践》 这个作业的要求在哪里 《网络攻防实践》假期作业 我在这个课程的目标是 学习并了解网络攻防的相关知识,能够进行独立的实际操作 这个作业在哪个具体方面帮助我实现目标 该作业主要帮助我学习markdown的相关用法以及Linux的常用命令,为学习网络攻防实践课做好准备 作业正文 作业一、作业二 参考文献 https://www.cnblogs.com/math/p/se-tools-001.html、https://www.cnblogs.com/math/p/exceltk.html、https://www.cnblogs.com/Pandaman/p/markdown.html 作业一 (1)你对网络攻击和防御了解多少?该课程需要计算机和网络相关的基础知识,你原专业是什么专业,目前你掌握多少基础知识? (2)作业要使用Markdown格式,Markdown入门参考(需掌握)。 我本科是软件工程专业,学习过《计算机网络》课程,了解一些网络相关的基本知识。但所学习知识尚浅,仍需努力学习相关知识。 攻击技术:网络扫描,网络监听,网络入侵,网络后门,网络隐身 防御技术:安全操作系统和操作系统的安全配置,加密技术,防火墙技术,入侵检测

shell的case用法

折月煮酒 提交于 2020-02-11 05:27:05
今天给大家简单介绍一下结构条件语句的用法,实际上就是规范的多分支if语句,如下: case语法: case "字符串变量" in   值1)指令1... ;;   值2)指令2... ;; ......    *)指令3... esac -------------------------------------------------------------------------------------- ok,我们可以换一种方式理解: 中文编程语法: case "找女朋友条件" in   有房)嫁给你... ;;   你爸是李刚) 嫁给你... ;;   有上进心) 可以考虑先做朋友... ;;   *)good bye bye! ... esac --------------------------------------------------------------------- 下面我们拿根据菜单选项手机充值脚本一个例子来测试一下效果: 测试1:根据用户的输入值判断 是哪个数字,给出相对应的服务或提示信息 1 [root@bqh-117 scripts]# vim case1.sh 2 #!/bin/sh 3 #date:2019-04-20 4 #maill:1147076062@qq.com 5 #author:aゞ锦衣卫 6 #script function

spark学习——spark shell学习

浪尽此生 提交于 2020-02-10 20:29:32
 今天按照实验三进行了相关的操作,实验三之前的是关于hadoop 以及hdfs的相关命令的使用,也包括Hadoop以及spark的安装,我之前就已经完成了相关环境的配置,所以我今天直接做了实验三中的spark shell命令的一部分,今天编程的部分因为之前理解了scala的一些编程方法所以今天进行的很顺利,唯一的问题就是对spark shell打包时候的相关语句不是很熟悉,,但是还是经过自己的理解完成了相关的shell命令的编程。   shell界面代码。 打包代码(第一次运行时间有点长)    之前的Hadoop的安装我是按照教程一步一步安装的,没有什么突发状况。 来源: https://www.cnblogs.com/huan-ch/p/12292304.html

shell编程题(四十四)

两盒软妹~` 提交于 2020-02-10 10:58:27
题目:   创建一个用户mandriva,其ID号为2002,基本组为distro(组ID为3003),附加组为linux; 答案:    #! /bin/bash groupadd linux groupadd -g 3003 distro useradd -u 2002 -g distro -G linux mandriva 来源: https://www.cnblogs.com/wanghao-boke/p/12289970.html

beaglebone_black_学习笔记——(3)点亮LED之shell命令

生来就可爱ヽ(ⅴ<●) 提交于 2020-02-09 19:06:38
这次改变一下笔记的结构,直接上图。点亮LED永远是学习MCU,ARM,FPGA的入门例程,可以说是经典例程。这里笔者也从点亮LED开始开始ARM学习之旅。 接下来就开始点亮LED之旅,在开始之前需要向读者说明:本文作者也是一个ARM初学者,学习过程中也是在网上查找各种资料,最后总结于此。可以确定实验的过程中有好多地方笔者自己也是没有搞明白的,所以请读者原谅不能写的太透彻。 第一步:要点亮LED,首先需要了解GPIO的硬件位置,这样才能去操作相应的IO口,实现点灯目的 1、连接好bb-black之后,等待系统启动之后在PC机的浏览器里面输入192.168.7.2就可以访问开发板的服务器了,在这里可以找到许多的硬件资料,同样也可以学习另外一种JS编程,总之,这里有好多对初学者有用的资料。 2、如下图,为开发板扩展口的GPIO分布。在本次实验中,笔者像其他初学者一样选择GPIO_44这个引脚作为本次实验的目标引脚。可以发现GPIO_44对应P8的12引脚,同时将P8的2脚作为接地引脚。 3、笔者喜欢从零开始搭建开发平台,手头也没有现成的LED灯模块,只好用面包板搭建一个简单的电路来实现了。如下图所示为LED灯的电路图,只需要一颗330的电阻和一颗红色发光二极管即可。 4、了解原理图之后,接下来开始在面包板上连线。如下图所示连接好电路图。完成这一步就可以操作LED了。 第二步

shell编程题(四十三)

橙三吉。 提交于 2020-02-09 16:12:00
题目:   查看哪些蜘蛛在抓取内容 答案:    /usr/sbin/tcpdump -i eth0 -l -s 0 -w - dst port 80 | strings | grep -i user-agent | grep -i -E 'bot|crawler|slurp|spider' 这题没看懂!!! tcpdump命令: Linux tcpdump命令用于倾倒网络传输数据。 执行tcpdump指令可列出经过指定网络界面的数据包文件头,在Linux操作系统中,你必须是系统管理员。 -a 尝试将网络和广播地址转换成名称。 -c<数据包数目> 收到指定的数据包数目后,就停止进行倾倒操作。 -d 把编译过的数据包编码转换成可阅读的格式,并倾倒到标准输出。 -dd 把编译过的数据包编码转换成C语言的格式,并倾倒到标准输出。 -ddd 把编译过的数据包编码转换成十进制数字的格式,并倾倒到标准输出。 -e 在每列倾倒资料上显示连接层级的文件头。 -f 用数字显示网际网络地址。 -F<表达文件> 指定内含表达方式的文件。 -i<网络界面> 使用指定的网络截面送出数据包。 -l 使用标准输出列的缓冲区。 -n 不把主机的网络地址转换成名字。 -N 不列出域名。 -O 不将数据包编码最佳化。 -p 不让网络界面进入混杂模式。 -q 快速输出,仅列出少数的传输协议信息。 -r<数据包文件>

Shell学习之shell简介

家住魔仙堡 提交于 2020-02-06 10:34:17
目录 学习源 什么是shell shell功能 学习源 小猿圈 https://book.apeland.cn/details/275/ 什么是shell shell是一个程序,采用C语言编写,是用户和linux内核沟通的桥梁。它既是一种命令语言,又是一种解释性的编程语言。通过一个图表来查看一下shell的作用。 拓展知识: kernel:为软件服务,接收用户或软件指令驱动硬件,完成工作; shell:命令解释器 user:用户接口,对接用户。 上图可以看出,shell在操作系统中起到了承接用户和系统内核的作用。那为什么不直接用户对内核呢? 原因很简单,因为内核处理的都是二进制,而用户处理的都是高级语言。简而言之,如果没有shell,你希望告诉你喜欢的妹子:我爱你。你需要经过以下步骤: 1)将“我爱你”翻译成二进制 2)告诉内核 3)内核通过网卡发送给你的妹子 4)妹子计算机网卡收到你发的二进制 5)网卡交给内核 6)内核交给妹子 7)妹子看到都是一串01组成的数字,o my god,二进制不是人人都懂的,你的表白也就石沉大海了。 为了让所有人都能快速、方便的使用计算机,我们的系统开发人员通过shell解决了这个问题。使任何一个希望通过计算机来工作、娱乐的人都能够快速操作计算机。 shell功能 命令行解释功能 启动程序 输入输出重定向 管道连接 文件名置换 (echo /*)

Linux-开发与管理 P1 shell编程

三世轮回 提交于 2020-02-05 13:32:20
文章目录 Linux-开发与管理 P1 shell编程 shell基础 shell简介 shell历史 命令格式 linux命令 文件文档相关 文件管理 文档编辑 文件传输 磁盘相关 网络通讯 系统设备相关 shell脚本 shell脚本基础 基础语法 变量 shell程序 说明性语句 功能性语句 结构性语句 shell函数 脚本调用 更多内容 Linux-开发与管理 P1 shell编程 shell基础 shell简介 什么是shell? Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁 Shell 既是一种 命令语言 ,又是一种 程序设计语言 Shell 是指一种 应用程序 ,这个应用程序提供了一个 界面 ,用户通过这个界面访问 操作系统内核的服务 shell 翻译成中文就是 贝壳 的意思,它就是Linux内核的一个 外层保护工具 ,并负责完成用户与内核之间的交互 shell能用来干什么? shell 是一个 命令行解释器 ,将用户命令解析为操作系统所能理解的指令,从而实现用户与操作系统的交互。同时,shell为操作系统提供了内核之上的功能,直接用来管理和运行系统。 shell历史 这是shell发展的时间图,这里主要来了解几种比较常用和熟悉的 Bourne Shell 简称 sh 由AT&T贝尔实验室的S.R.Bourne开发,也因开发者的姓名而得名