20211301 学习笔记3

news/发布时间2024/5/20 11:36:49

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

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

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

相关文章

嵌入式软件调试与验证2仿真

2 仿真环境中的嵌入式软件调试 2.1 固件调试方法概述 目前的EDA环境提供了各种固件调试方法。通常可以使用以下方法之一:使用硬件的SystemC模型进行仿真这可以在不接触硬件的情况下尽早开始固件开发,并在假设模型准确的情况下测试代码的功能。主要局限是缺乏系统视图和(取决…

webstorm插件分享

插件修改选中区域背景本文来自博客园,作者:__username,转载请注明原文链接:https://www.cnblogs.com/code3/p/17726441.html

Git

目录Git安装初始化配置创建版本库添加文件提交文件时光穿梭版本回退工作区与版本库管理修改撤销修改删除文件远程仓库添加远程库从远程库克隆分支管理解决冲突分支管理策略Bug分支Feature分支多人协作Rebase标签管理创建标签操作标签自定义 Git忽略特殊文件配置别名搭建 Git 服…

Http访问格式刨析

* 概念:Hyper Text Transfer Protocol 超文本传输协议 * 传输协议:定义了,客户端和服务器端通信时,发送数据的格式 参考火狐浏览器,其它浏览器没找到* 特点: 1. 基于TCP/IP的高级协议 2. 默认端口号:80 3. 基于请求/响应模型的:一次请求对应一次响应 4. 无状态的:每次请…

学习笔记三

一、任务详情自学教材第10章,提交学习笔记(10分) 大家学习过Python,C,Java等语言,总结一下一门程序设计语言有哪些必备的要素和技能?这些要素和技能在shell脚本中是如何呈现出来的?知识点归纳以及自己最有收获的内容 (3分)问题与解决思路(2分)实践内容与截图,代码链…