首页 > 其他分享 >20211301 学习笔记3

20211301 学习笔记3

时间:2023-09-24 21:48:11浏览次数:58  
标签:脚本 变量 makefile 笔记 学习 命令 sh 20211301 执行

20211301《Unix/Linux系统编程》学习笔记3

学习目标

  • 总结一下一门程序设计语言有哪些必备的要素和技能?

  • 这些要素和技能在shell脚本中是如果呈现出来的?

教材知识总结

10.1 sh脚本

  • 定义:sh脚本是一个包含sh语句的文本文件、命令解释程序sh要执行该语句

  • sh:sh是解释程序,逐行读取sh脚本文件并执行这些行; sh只有字符串,无类型 ;无main函数

  • c程序:必须先编译链接到一个二进制可执行文件,然后通过主sh的子进程运行二进制可执行文件

  • 命令行参数: 可使用mysh one two three调用sh脚本

  • 在sh脚本中可用内置变量$#、$*计数并显示命令行参数

  • sh变量:内置变量(PATH、HOME、TERM)、任何符号都可作为sh变量

  • sh变量设置与赋值

  • sh语句:包括所有linux命令以及可能得IO重定向

10.2 sh命令

  • 内置命令

  • read命令:当sh执行read命令,他会等待stdin的输入行,将其划分为几个标记,分配给列出的变量,允许用户与正在执行的sh进行交互

  • linux命令

expr:更改sh变量为数值I = ${expr $I + 1} # I=I+1
管道命令: 过滤器
其他:

  • 控制语句:for ,if ,while ,until-do ,case ,continue和break

10.3 其他

  • 嵌入文档

  • 应用:与makefile不同,简单的编译链接任务可由sh脚本来执行

代码实现

1. mysh文件执行

  • 创建文本文件

  • chmod +x mysh使其可执行,然后运行

  • sh命令行参数

2. makefile

  • 创建makefile

  • 运行

  • 清除.o文件

苏格拉底提问

  • makefile




  • sh




问题与解决方案

  • 问题一:makefile命令无法使用,出现报错

  • 问题一解决方法:因为代码是从上课的笔记复制过来的,复制后缩进不是tab而是四个空格,而且冒号是中文的冒号,修改后程序可正常运行

参考网站

  1. https://blog.csdn.net/guoxiaowei400/article/details/104705886

  2. https://blog.csdn.net/PYJTRK/article/details/122279448

标签:脚本,变量,makefile,笔记,学习,命令,sh,20211301,执行
From: https://www.cnblogs.com/pengqiqi/p/17726070.html

相关文章

  • 编程笔记·开篇
    2023年9月,经过一夜的辗转难眠,最后在一个清晨,我坐上了久违的地铁......
  • 学习笔记3
    一门程序设计语言必备的要素和技能一门程序设计语言具有一些共同的要素和技能,无论是Python、C还是Java,以下是其中一些必备的要素和技能:语法:了解语言的基本语法规则,包括变量、数据类型、运算符、控制流语句(如条件语句和循环语句)、函数、类等。数据结构:掌握常见的数据结构,如......
  • 20230924学习总结
    1、DataGrip连接hive数据库DataGrip是JetBrains旗下的一款数据库管理软件,通过它能更方便的操作虚拟机中的hive数据库 依次点击+ ->数据源->ApacheHive进入配置链接界面 主机处填虚拟地址,用户密码填虚拟机账号密码(配置无误情况下仍可能连接失败,等候几分钟重试即可)2......
  • Java语法学习——运算符
    一、基本的算术运算符、+符号做连接符1.基本的算术运算符   为了掌握基本的算术运算符的使用,我们在IDEA里新建一个package(it.com.operator),然后在这下面新建一个Javaclass(OperatorDemo1):packageit.com.operator;publicclassOperatorDemo1{publicstaticvoid......
  • 学习笔记3 第十章的自学归纳
    第十章sh编程10.1sh脚本1.可执行性:Shell脚本需要设置可执行权限,使用chmod+xscript.sh命令添加执行权限,然后可以通过./script.sh执行脚本。2.解释器指定:在脚本的第一行使用#!/bin/sh或#!/bin/bash来指定解释器。sh是BourneShell的标准解释器,而bash是Bourne......
  • 学习笔记3
    第10章sh编程——教材知识点归纳这一章课本为我们介绍的是sh编程内容,sh是一种脚本,是一种可以实现在linux中批量执行命令的文件。10.1~10.2sh脚本、sh脚本和C程序sh是Linux下进行批处理的脚本,我觉得它类似于windows下的bat脚本。可见sh脚本的逻辑和C语言等程序设计语言有很多......
  • Service mesh 学习02 Istio基础
    一、Istio架构概述1.Pilot提供服务发现和路由规则2.Mixer策略控制:服务调用限流3.citadel安全作用,可以保证服务间的通信安全4.Enovy代理:处理服务的流量二、自动注入sidecar-injector:会修改应用程序的描述信息,注入sidecar描述信息:创建pod的yaml文件三、流量拦截根据iptables路由规......
  • C语言学习记录---函数4
    汉诺塔问题(递归)#include<stdio.h>//定义汉诺塔函数voidhanoi(intn,charA,charB,charC){if(n==1){printf("将盘子从%c移动到%c\n",A,C);}else{//将n-1个盘子从A移动到Bhanoi(n-1,A,C,B);//将第n个盘子从......
  • 学习笔记3(第十章)
    一、知识点归纳1、本章的主要学习重点在本章节中,我们将深入探讨sh脚本的各个方面。首先,我们会了解sh脚本是什么,以及它与C语言在结构和功能上的主要区别。接下来,我们会详细学习如何编写sh脚本,其中包括变量的定义和使用、不同类型的语句结构、命令的执行、常规的系统命令以及命令......
  • 20211316郭佳昊 《信息安全系统设计与实现(上)》第三周学习笔记
    一、任务要求[1]知识点归纳以及自己最有收获的内容,选择至少2个知识点利用chatgpt等工具进行苏格拉底挑战,并提交过程截图,提示过程参考下面内容(4分)我在学***X知识点,请你以苏格拉底的方式对我进行提问,一次一个问题核心是要求GPT:请你以苏格拉底的方式对我进行提问然后GPT就会......