20191318王泽文第十章学习笔记

学习笔记

20191318 王泽文

  《Unix/Linux系统编程》


第十章 sh编程

  本章主要讲述了sh脚本的一些基本语法和使用。

  在本章的学习中,我了解到了sh脚本语言,它和C语言和Makefile有一定的相似之处,在我看来,其就是C语言和Makefile的结合。主要学习的内容有:

  1. 命令行参数
    1. $# 命令行参数(1到)n的数噩
    2. $* 所有命令行参数,包括$0
    3. $S 执行sh的进程PID
    4. $? 最后一个命令执行的退出状态(如果成功,则为0,否则为非0)
  2. sh命令
    1. 内置命令
      1. .file: 读取并执行文件。
      2. break [n]: 从最近的第n个嵌套循环中退出。
      3. cd [ dirname] : 更换目录。
      4. continue [n]: 重启最近的第n个嵌套循环。
      5. eval [arg ... ]: 计算一次参数并让 sh 执行生成的命令。
      6. exec [arg ... ]: 通过这个 sh 执行命令, sh 将会退出。
      7. exit[n]: 使 sh 退出,退出状态为 n。
      8. export [var ... ]: 将变量导出到随后执行的命令。
      9. read [ var ... ] : 从stdin 中读取一行并为变议赋值。
      10. set [arg ...] :在执行环境中设置变量。
      11. shift: 将位甡参数 $2 $3 .• 重命名为 $1 $2...。
      12. trap [arg] [n]: 接收到信号 n 后执行参数。
      13. umask [ddd]: 将掩码设置为八进制数 ddd 的。
      14. wait [pid] : 等待进程 pid, 如果没有给出 pid, 则等待所有活动子进程。
      15. read :当 sh 执行 read 命令时, 它会等待来自 stdin 的输入行。
    2. Linux 命令
      1. echo 命令: echo 只是将参数字符串作为行回显到 stdout。
      2. expr 命令:因为所有的 sh 变量都是字符串, 所以我们不能直接把它们改为数值。
    3. 管道命令:在sh脚本中经常使用管道作为过滤器
    4. 实用命令 :除了上面的Linux命令之外,sh还使用许多其他实用程序作为命令。
  3. sh语句
    1. if-else-fi语句
    2. if-elif-else-fi语句
    3. for 语句
    4. while 语句
    5. until-do 语句
    6. case 语句
    7. continue break语句

  sh编程实践:
对openEuler系统的dos界面和优麒麟gui界面的简单转换:
sh
sh

  


  收获的内容

  在这里,我总结一下我对Python这个语言的一些认识,以及其必备的要素和技能:
Python 是一种面向对象、解释型、弱类型的脚本语言,它也是一种功能强大而完善的通用型语言。其必备要素是代码,解释器,编译器和严格的格式控制。其与sh脚本有很多相似的地方,它们都是脚本型的语言都需要解释器来执行,sh用sh解释器,Python使用Python解释器。Python拥有众多扩展库,也可以用来调用shell指令。


其他

openEuler学习及问题解决

  在本周的学习中,安装了openeuler系统进行学习。在安装的过程中也遇到了不少的问题。

  openEuler是一个开源的系统,也就是其没有gui界面,只有dos界面。一开始,我准备安装使用优麒麟的操作界面。但由于镜像源的原因,一直无法下载安装。

  解决方法:使用离线安装的方式。由于使用的是VBox的虚拟机,需要先安装增强功能及共享文件夹进行安装。具体安装流程如下链接:VirtualBox虚拟机Linux Dos界面下增强功能的安装和共享文件夹的设置及使用


原文地址:https://www.cnblogs.com/wzwyoshino/p/15336027.html