首页 > 其他分享 >《信息安全系统设计与实现》第三周学习笔记

《信息安全系统设计与实现》第三周学习笔记

时间:2023-09-24 20:11:11浏览次数:61  
标签:语句 脚本 Shell 文件 信息安全 第三周 笔记 命令 sh

    一门程序设计语言有哪些必备的要素和技能:

语法:掌握该语言的基本语法和规则,包括变量、数据类型、运算符、控制结构等。

数据结构:了解该语言中常用的数据结构,如数组、链表、栈、队列、树、图等,以及它们的实现方法和性能分析。

算法:了解常见的算法和设计模式,包括排序、搜索、贪心、动态规划、回溯等,以及如何应用它们来解决实际问题。

面向对象编程:了解该语言中的面向对象编程思想,包括类、对象、继承、多态等,以及如何使用它们来实现软件的设计和开发。

异常处理:了解该语言中的异常处理机制,包括异常的分类、捕获、处理和抛出等,以及如何使用它们来提高程序的稳定性和可靠性。

文件操作:了解该语言中的文件操作机制,包括文件的打开、读写、关闭等操作,以及如何使用它们来实现文件的读取和写入。

网络编程:了解该语言中的网络编程机制,包括网络协议、套接字、网络通信等,以及如何使用它们来实现网络应用程序的开发。

在Shell脚本中,这些要素和技能也有相应的呈现方式:

语法:Shell脚本采用Bash或其他Shell语言的语法规则。这包括变量的定义和使用、条件语句(if-else)、循环语句(for、while)、函数的定义和调用等。

数据结构:Shell脚本可以使用数组(Array)和关联数组(Associative Array)来存储和处理数据。数组可以用于存储一组有序的数据,关联数组可以使用键值对存储数据。

算法:Shell脚本中的算法可以通过条件语句和循环语句实现各种逻辑操作,例如搜索、排序、过滤等。也可以使用递归来实现需要重复执行的操作。

面向对象编程:Shell脚本不直接支持面向对象编程,但可以使用函数来模拟面向对象的概念。可以将功能封装到函数中,并使用参数传递和返回值来实现代码的模块化和重用。

异常处理:Shell脚本可以使用条件语句和错误处理机制来捕获和处理异常情况。例如使用if-else语句判断执行结果,并根据情况进行相应的处理;还可以使用陷阱(trap)命令来处理信号和错误。

文件操作:Shell脚本可以使用各种命令来进行文件的读取、写入、复制、移动、删除等操作。例如,可以使用cat、grep等命令来读取文件内容,使用echo、printf等命令来写入文件内容。

网络编程:Shell脚本可以使用诸如curl、wget等命令来进行基本的网络通信,例如发送HTTP请求、下载文件等。也可以使用套接字(socket)编程相关的命令和函数来实现更高级的网络应用。
sh脚本:
是一个包含sh语句的文本文件,命令解释程序sh要执行该语句,例如我们可以创建一个文本文件mysh,包含:
/bin/bash
comment hello
echo hello

使用chmod +x mysh使其可执行,然后运行mysh
sh脚本与c程序
sh是一个解释程序,逐行读取sh脚本文件并直接执行这些行。sh脚本不需要main函数,第一个可执行语句是程序的入口点。
C语言必须先编译链接到一个二进制可执行文件,然后通过主sh的子进程运行二进制可执行文件,每个变量必须有一个类型,必须有main()函数。

命令行参数:
命令行参数的目的是为了灵活地定制程序的行为。例如,一个图片处理程序可能接受一个文件名作为参数来指定要处理的图片,还可能接受一个选项参数来指定要执行的具体操作(如缩放、旋转等)以及相应的参数值(如缩放比例、旋转角度等)。

在Shell脚本中,可以使用$1、$2、$3等变量来获取命令行参数的值。其中,$1表示第一个参数,$2表示第二个参数,依此类推。还可以使用特殊变量$0表示当前脚本的名称,$#表示参数的个数,$@表示所有参数的列表等。

sh变量:
除了普通变量外,Shell还支持特殊变量。这些变量通常以$符号开头,并在Shell脚本中具有特殊意义,例如:
$0:当前脚本的名称
$#:命令行参数的个数
$@:命令行参数的列表
$?:上一个命令的退出状态

sh中的引号:
sh有许多特殊字符,如$、/、*、>、<等,要把他们当做普通字符,可使用\或单引号来引用他们

sh语句:
sh语句包括所有Unix/Linux命令,以及可能的I/O重定向
示例:
ls
ls > outfile
date
cp f1 f2
mkdir newdir
cat < filename
此外,sh编程语言还支持控制sh程序执行的测试条件、循环、case等语句

sh命令:
file:读取并执行文件

break [n]:从最近的第n个嵌套循环中退出

cd [dirname]:更换目录

continue [n]:重启最近的第n个嵌套循环

eval [arg...]:计算一次参数并让sh执行生成的命令。

exec [arg...]:通过这个sh执行命令,sh将会退出。

exit [n]:使sh退出,退出状态为n。

export [var…]:将变量导出到随后执行的命令.

trap [arg] [n]:接收到信号n后执行参数。

umask [ddd]:将掩码设置为八进制数 ddd 的。

read命令:当sh执行read命令时,它会等待来自stdin的输入行。

linux命令:

echo命令

expr命令

管道命令:在sh脚本中经常使用管道作为过滤器

实用命令:

axk:数据处理程序。

cmp:比较两个文件。

comm:选择两个排序文件共有的行。

grep:匹配一系列文件的模式。

diff:找出两个文件的差异。

join:通过使用相同的键来连接记录以比较两个文件。

sed:流或行编辑命令。

sort:排序或合并文件。

tail:打印某个文件的最后口行。

tr:一对一宇符翻译。

uniq:从文件中删除连续重复行

sh控制语句:

if-else-fi语句
if [condition]
then
statemates
else
statements
fi
-运算符 -eq -ne -lt -gt
if-elif-else-fi语句
if [condition];then
commands
elif [condition2];then
commands
else
commands
fi

for语句
for VARIABLE in string1 string2 ... stringn
do
commands
done

实践:实现一个99乘法表:



苏格拉底提问:











标签:语句,脚本,Shell,文件,信息安全,第三周,笔记,命令,sh
From: https://www.cnblogs.com/ljy12392/p/17726555.html

相关文章

  • 信息安全系统设计与实现学习笔记3
    信息安全系统设计与实现学习笔记3一、知识点归纳以及自己最有收获的内容知识点归纳程序设计语言的要素和技能包括语法、语义和语用。这在shell脚本中体现在各类命令中。语言基本成分包括数据成分、运算成分和控制成分。第10章sh编程sh脚本是包含sh语句的文本文件,由sh解释......
  • Nginx第四天学习笔记
    Nginx第四天学习笔记在经过了前几天的学习后,我们对Nginx已经有了一个基本的了解。今天我们将更深入地探讨Nginx的配置和优化。一、配置Nginx的配置文件位于/etc/nginx/nginx.conf。这个文件包含了Nginx服务器的主要配置信息,包括端口、域名、SSL证书等。以下是一个简单的配置示例:per......
  • 学习笔记(3)
    一、任务详情自学教材第10章,提交学习笔记(10分)大家学习过Python,C,Java等语言,总结一下一门程序设计语言有哪些必备的要素和技能?这些要素和技能在shell脚本中是如果呈现出来的?二、知识点归纳10.1sh脚本sh脚本是一个包含sh语句的文本文件,命令解释程序sh要执行该语句。sh脚本通......
  • 第三周Linux教材第十章学习笔记——sh编程
    第十章——sh编程sh脚本1.sh脚本是一种为shell编写的脚本程序。这个程序用纯文本文件,将一些shell的语法与命令(含外部命令)写在里面,搭配正则表达式、管道命令与数据流重定向等功能。第一行必须为#!/bin/sh2.命令行使用chmod+x <filename>编译后才能用./filename来运行。3.......
  • 2023-2024-1 20211306 密码系统设计与实现课程学习笔记3
    20211306密码系统设计与实现课程学习笔记3学习任务详情自学教材第10章,提交学习笔记大家学习过Python,C,Java等语言,总结一下一门程序设计语言有哪些必备的要素和技能?这些要素和技能在shell脚本中是如果呈现出来的?知识点归纳以及自己最有收获的内容,选择至少2个知识点利用......
  • 学习笔记3
    第10章sh编程一、知识点总结1.sh脚本sh脚本是一个包含sh语句的文本文件,命令解释程序sh要执行该语句。实践过程:2.sh脚本与C程序sh是一个解释程序,逐行读取sh脚本文件并直接执行这些行;C程序必须先编译链接到一个二进制可执行文件在sh脚本中,每个变量都是字符串;在C程序......
  • 第十章学习笔记
    第九章学习笔记一、课本知识1.sh脚本包含sh语句的文本文件,命令解释程序sh要执行该语句。2.sh脚本与C程序-sh:(1)sh是一个解释程序,逐行读取sh脚本文件并直接执行这些行。(2)sh脚本中,每个变量都是字符串。(3)sh脚本不需要main函数,第一个可执行语句是程序的入口点。-C程序:(1)C程序......
  • 信息安全系统设计与实现 学习笔记3
    一、总结一下一门程序设计语言有哪些必备的要素和技能?这些要素和技能在shell脚本中是如果呈现出来的?一门程序设计语言的必备要素和技能包括:语法:掌握语言的基本语法,包括变量、数据类型、运算符、流程控制语句、函数、类等。算法和数据结构:能够设计和实现常用的算法和数据结构,如......
  • flex布局笔记
    一、认识flex布局认识flexbox:弹性盒子是一种用于按行或按列布局元素的一维布局方法;元素可以膨胀一填充额外的空间,收缩一适应更小的空间;通常我们使用flexbox来进行布局的方案之为flex布局(flexlayout);flex布局的重要概念开启了flex布局的元素叫flexcontainerflexcontai......
  • 学习笔记3
    程序设计语言必备要素和技能对于Python、C和Java这三门常见的编程语言,它们都有一些共同的必备要素和技能。语法和语义:编程语言的语法和语义是这个语言的基础。这包括了熟悉变量、数据类型、运算符、控制流程等基本语法结构,以及了解编程语言的特性和约束。数据结构与算法:了......