“Linux-2019-fall”的版本间的差异

来自SUDA-HLT
跳到导航 跳到搜索
 
(未显示同一用户的54个中间版本)
第1行: 第1行:
= Linux 操作系统 (201i9秋季、主要面向文正学院16级、17级) 课程主页 =
+
= Linux 操作系统 (2019秋季、主要面向文正学院16级、17级) 课程主页 =
  
 
== 前言 ==
 
== 前言 ==
第7行: 第7行:
 
** 内容不可能面面俱到,抓住重点(以及自己感觉最重要的知识点)即可,其他需要靠学生自己去探索
 
** 内容不可能面面俱到,抓住重点(以及自己感觉最重要的知识点)即可,其他需要靠学生自己去探索
 
** 多鼓励学生自己思考
 
** 多鼓励学生自己思考
** 考虑基于自己的讲义,写一本很薄的书:Linux最基本基础讲义(十多年来使用经验、只讲最重要的最常用的;鼓励同学们多思考、自己把事情想清楚)
+
** 考虑基于自己的讲义,写一本很薄的书:Linux最基本基础讲义
 +
*** 十多年来使用经验、只讲最重要的最常用的;
 +
*** 鼓励同学们多思考、自己把事情想清楚;最重要的不是知道如何操作,敲命令,而是理解为什么这样,发展过程,感受技术发展的伟大
 +
*** 简明扼要
  
 
* 上课时间和地点:
 
* 上课时间和地点:
** 周二10:30-12:00 2-100理论课;
+
** 周二10:30-12:00 2-110理论课;
** 周二13:30-15:00(单周)
+
** 周二13:30-15:00 2-209(单周)
 
* 成绩分布:平时10-15分、实践20-25、期末60(计划)
 
* 成绩分布:平时10-15分、实践20-25、期末60(计划)
* Linux课程QQ群:学习委员或班长建一个
+
* Linux课程QQ群:484595568
  
 
* [https://pan.baidu.com/s/18xF9-GorGGuJN0-XVlItMg Linux课程的百度云分享链接(2018年教学视频)] - 密码: 45n2
 
* [https://pan.baidu.com/s/18xF9-GorGGuJN0-XVlItMg Linux课程的百度云分享链接(2018年教学视频)] - 密码: 45n2
 
* [http://hlt.suda.edu.cn/index.php/Linux-2019-fall-final-score 期末总成绩(待定)]
 
* [http://hlt.suda.edu.cn/index.php/Linux-2019-fall-final-score 期末总成绩(待定)]
  
 +
== 实践作业 ==
  
== 2019.9.3 ==
+
* 实验作业4:c语言实现cpdir命令
 +
    编译后,在命令行输入 cpdir dir1 dir2可以递归将dir1复制为dir2,和cp -r dir1 dir2的功能一致
  
===课程介绍、自我介绍===
+
* 实验作业3:c语言实现myls命令
 +
    编译后,在命令行输入 myls dir可以显示dir1目录下的文件(包括目录),并且输出每一个文件的权限、时间、大小、拥有着等信息,类似于ls -l dir。
  
* 介绍课程基本情况,个人介绍,对读书、独立思考的看法
+
* 实验作业2 [2019.10.29]:c语言实现mycat命令
 +
    mycat [FILE]...
 +
    不用支持任何选项
 +
    可以处理多个文件,如果前面文件出错,在stderr输出错误信息,继续处理后面的文件
 +
    如果没有文件参数,则处理stdin信息
  
=== 操作系统的作用 ===
 
* 管理硬件资源
 
* 为程序员提供API
 
* 为普通用户提供界面(GUI、CLI)
 
* 讨论了操作系统的概念、作用,相当于回忆操作系统理论课的内容
 
* /dev/stdin (stdout, stderr),为什么要区分标准输出和标准错误输出?
 
* g++ gcc cout cerr printf fprintf
 
  
=== Linux和Windows的一些区别 ===
+
* 实验作业1:c语言实现加密encrypt命令
 +
    编译后,在命令行输入 encrpyt,循环从键盘读入一行文本,直到输入结束EOF;加密算法:A->B B->C .. Z->A 小写字母也是类似的,数字不变。
  
* 图形界面
 
  菜单栏隐藏在最上面
 
  默认有四个工作区workplace
 
  ctrl+alt+上下左右键:可以在四个工作区之间切换
 
  ctrl+shift+alt+上下左右键:把当前焦点窗口拖到另外一个工作区
 
  有自己的文本编辑器
 
  熟悉一下资源管理器
 
  
* Linux的文件目录结构
+
== 上机操作随堂考察 ==
** 标准化(windows下是乱七八糟的)
 
** bin(二进制);dev(设备);boot(启动);home(所有用户的家目录)
 
** 只有一个根目录 /(windows下每个分区有一个目录)
 
** 家目录(Home Folder)
 
*** 每个用户都有一个家目录,存放自己的私有数据
 
*** 用户的家目录通常在/home/用户名
 
*** 除非别人允许,用户A无法访问用户B的家目录(权限的概念)
 
*** 权限管理使得Linux支持真正的多用户
 
  
=== 讲课期间用到的几个命令 ===
+
* 第11周上机课随堂考察,看看大家的掌握情况(期中考试)
* cd(change command)、ls (list files)
 
  
=== 杂项 ===
+
= 课堂讲义 =
* 文字界面下的提示符:prompt symbol,通常包含的信息:用户名@机器名: 当前工作目录 $
+
 
 +
stat命令(可以不讲):获取文件的状态信息
 +
 
 +
shell:
 +
declare
 +
选择(条件判断的两种语法 -lt [[]]...)
 +
循环
 +
函数
 +
命令行参数
 +
 
 +
https://www.runoob.com/linux/linux-shell.html
 +
 
 +
== 2019.12.10&17 shell-script-runoob==
 +
 
 +
* [http://hlt.suda.edu.cn/~zhli/teach/linux_2019_fall/12.10_17/shell_variable.JPG 变量板书]
 +
* [http://hlt.suda.edu.cn/~zhli/teach/linux_2019_fall/12.10_17/shell_arr_calculus.JPG 数组_运算板书]
 +
* [http://hlt.suda.edu.cn/~zhli/teach/linux_2019_fall/12.10_17/shell_echo.JPG echo命令板书]
 +
* [http://hlt.suda.edu.cn/~zhli/teach/linux_2019_fall/12.10_17/shell_printf_read_test_if.JPG printf_read_test_if板书]
 +
* [http://hlt.suda.edu.cn/~zhli/teach/linux_2019_fall/12.10_17/shell_for_while_func.JPG for_while_func板书]
 +
 
 +
 
 +
* [http://hlt.suda.edu.cn/~zhli/teach/linux_2019_fall/12.10_17/lessons_TODO.JPG 课程未讲内容板书]
 +
 
 +
== 2019.12.3 shell-script-part1/2==
 +
 
 +
* [http://hlt.suda.edu.cn/~zhli/teach/linux_2019_fall/12.3/shell-script-part1.JPG shell-script-part1板书]
 +
* [http://hlt.suda.edu.cn/~zhli/teach/linux_2019_fall/12.3/shell-script-part2.JPG shell-script-part2板书]
 +
* [http://hlt.suda.edu.cn/~zhli/teach/linux_2019_fall/12.3/array-for.sh array-for.sh]
 +
 
 +
== 2019.11.26 sed、shell-script-part0==
 +
 
 +
* [http://hlt.suda.edu.cn/~zhli/teach/linux_2019_fall/11.26/sed.JPG sed板书]
 +
* [http://hlt.suda.edu.cn/~zhli/teach/linux_2019_fall/11.26/shell-script-part0.JPG shell-script-part0板书]
 +
 
 +
== 2019.11.19 vim中的正则表达式、egrep中re的高级用法==
 +
 
 +
* 正则表达式在vi中的使用、egrep中的高级用法:[http://hlt.suda.edu.cn/~zhli/teach/linux_2019_fall/11.19/regex-vi-egrep.jpg 板书]
 +
 
 +
* vi中的非贪心匹配:[a-z]\{-3,\} (负号就表示不贪心匹配 )
 +
** {-n,m}: 前面加一个负号
 +
* egrep中的非贪心匹配:egrep -o '[a-z]{3,}?'
 +
 
 +
* magic模式,very magic模式:多大程度上将元字符看成元字符(用\可以转义为普通字符),而不是看成普通字符(用\转义为元字符)
 +
 
 +
 
 +
下面这个网址的介绍很不错,值得仔细看一下。
 +
 
 +
https://www.cnblogs.com/penseur/archive/2011/02/25/1964522.html
 +
http://qianjigui.javaeye.com/blog/368449
 +
 
 +
== 2019.11.12 正则表达式part-2/3 ==
 +
 
 +
* [http://hlt.suda.edu.cn/~zhli/teach/linux_2019_fall/11.12/regex-part2.jpg 正则表达式part-2板书]
 +
* [http://hlt.suda.edu.cn/~zhli/teach/linux_2019_fall/11.12/regex-part3.jpg 正则表达式part-3板书]
 +
 
 +
后续在vim sed中继续深入学习和练习。
 +
 
 +
== 2019.11.5 正则表达式part-1 ==
 +
 
 +
* 从对读书的一些体会谈起
 +
  只有读书才可能改变一个人;根据自己的兴趣去读书,不刻意选择读什么、读多少;读书最重要的是多思考;读书的最终目的是了解这个世界、了解自己、追求真知
 +
  如果读一本书,不喜欢,就跳过或扔到一边,不要迷信任何书、任何人
 +
  相信自己,凡事多问为什么,不要完全相信任何人,独立思考,尊重自己(自重),自己看重自己,不要看轻自己
 +
  无论一个人多渺小,或者多富有(名利),所做的事情对世界都是有影响的,或善或恶。因此勿以恶小而为之,勿以善小而不为。每天都清醒、真诚、认真的活,活好自己仅有的一辈子。
 +
 
 +
* [http://hlt.suda.edu.cn/~zhli/teach/linux_2019_fall/11.5/regex-part1.JPG 正则表达式part-1板书]
 +
 
 +
== 2019.10.29 重定向、管道 ==
 +
 
 +
* [http://hlt.suda.edu.cn/~zhli/teach/linux_2019_fall/10.29/1.redirect.JPG redirect重定向板书]
 +
 
 +
* [http://hlt.suda.edu.cn/~zhli/teach/linux_2019_fall/10.29/2.pipeline.JPG pipeline管道板书]
 +
 
 +
== 2019.10.22 shell、通配符、find、egrep、重定向初步 ==
 +
 
 +
* [http://hlt.suda.edu.cn/~zhli/teach/linux_2019_fall/10.22/1.shell_wildcard.JPG shell_wildcard板书]
 +
 
 +
* [http://hlt.suda.edu.cn/~zhli/teach/linux_2019_fall/10.22/2.find_egrep_redirect.JPG find_egrep_redirect板书]
 +
 
 +
== 2019.10.15 文本查看、vi ==
 +
 
 +
* 文件操作、文本文件查看命令 [http://hlt.suda.edu.cn/~zhli/teach/linux_2019_fall/10.15/1.touch_rm_cat_less.JPG touch_rm_cat_less板书]
 +
 
 +
* 文本编辑vi:[http://hlt.suda.edu.cn/~zhli/teach/linux_2019_fall/10.15/2.vi.JPG vi板书]
 +
 
 +
== 2019.10.8 文件权限、目录结构==
 +
 
 +
* [http://hlt.suda.edu.cn/~zhli/teach/linux_2019_fall/10.8/1.ls_rwx.jpg ls_rwx板书]
 +
* [http://hlt.suda.edu.cn/~zhli/teach/linux_2019_fall/10.8/2.dir_structure.jpg dir_structure板书]
 +
 
 +
    目录结构
 +
        文件名命名规则
 +
        绝对路径和相对路径
 +
    权限rwx user group others
 +
 
 +
== 2019.9.24 man命令 ==
 +
 
 +
 
 +
* [http://hlt.suda.edu.cn/~zhli/teach/linux_2019_fall/9.24/1.man.JPG man_man板书]
 +
 
 +
* [http://hlt.suda.edu.cn/~zhli/teach/linux_2019_fall/9.24/2.man_ls.JPG man_ls板书]
 +
 
 +
== 2019.9.17 bash介绍、命令格式==
 +
 
 +
* [http://hlt.suda.edu.cn/~zhli/teach/linux_2019_fall/9.17/bash_part1.JPG bash_part1板书]
 +
* [http://hlt.suda.edu.cn/~zhli/teach/linux_2019_fall/9.17/bash_part2.JPG bash_part2板书]
 +
  文字界面对应的进程(程序)是什么?在干嘛(功能)?(子进程、进程树)
 +
  bash如何找到命令
 +
  一些常用命令
 +
  命令的格式和含义介绍
 +
  写个C语言程序
 +
 
 +
* 遗留问题:不是按照PATH中的顺序逐一找命令吗?是的。之前实验失败可能是因为bash有记忆或缓存?
 +
 
 +
== 2019.9.10 操作系统介绍、Windows和Linux的区别、文字终端下的命令 ==
 +
 
 +
* [http://hlt.suda.edu.cn/~zhli/teach/linux_2019_fall/9.10/1.os_review.JPG 1.os_review板书]
 +
* [http://hlt.suda.edu.cn/~zhli/teach/linux_2019_fall/9.10/2.linux_vs_windows.JPG 2.linux_vs_windows板书]
 +
* [http://hlt.suda.edu.cn/~zhli/teach/linux_2019_fall/9.10/3.cli_commands.JPG 3.cli_commands板书]
 +
 
 +
== 2019.9.3 个人、课程介绍;操作系统介绍==
 +
 
 +
* [http://hlt.suda.edu.cn/~zhli/teach/linux_2019_fall/9.3/os_overview_part1.JPG os_overview_part1板书]
 +
* [http://hlt.suda.edu.cn/~zhli/teach/linux_2019_fall/9.3/os_overview_part2.JPG os_overview_part2板书]

2020年2月3日 (一) 11:48的最新版本

Linux 操作系统 (2019秋季、主要面向文正学院16级、17级) 课程主页

前言

  • 写给自己的话
    • 内容不可能面面俱到,抓住重点(以及自己感觉最重要的知识点)即可,其他需要靠学生自己去探索
    • 多鼓励学生自己思考
    • 考虑基于自己的讲义,写一本很薄的书:Linux最基本基础讲义
      • 十多年来使用经验、只讲最重要的最常用的;
      • 鼓励同学们多思考、自己把事情想清楚;最重要的不是知道如何操作,敲命令,而是理解为什么这样,发展过程,感受技术发展的伟大
      • 简明扼要
  • 上课时间和地点:
    • 周二10:30-12:00 2-110理论课;
    • 周二13:30-15:00 2-209(单周)
  • 成绩分布:平时10-15分、实践20-25、期末60(计划)
  • Linux课程QQ群:484595568

实践作业

  • 实验作业4:c语言实现cpdir命令
    编译后,在命令行输入 cpdir dir1 dir2可以递归将dir1复制为dir2,和cp -r dir1 dir2的功能一致
  • 实验作业3:c语言实现myls命令
    编译后,在命令行输入 myls dir可以显示dir1目录下的文件(包括目录),并且输出每一个文件的权限、时间、大小、拥有着等信息,类似于ls -l dir。
  • 实验作业2 [2019.10.29]:c语言实现mycat命令
    mycat [FILE]... 
    不用支持任何选项
    可以处理多个文件,如果前面文件出错,在stderr输出错误信息,继续处理后面的文件
    如果没有文件参数,则处理stdin信息


  • 实验作业1:c语言实现加密encrypt命令
    编译后,在命令行输入 encrpyt,循环从键盘读入一行文本,直到输入结束EOF;加密算法:A->B B->C .. Z->A 小写字母也是类似的,数字不变。


上机操作随堂考察

  • 第11周上机课随堂考察,看看大家的掌握情况(期中考试)

课堂讲义

stat命令(可以不讲):获取文件的状态信息

shell: declare 选择(条件判断的两种语法 -lt [[]]...) 循环 函数 命令行参数

https://www.runoob.com/linux/linux-shell.html

2019.12.10&17 shell-script-runoob


2019.12.3 shell-script-part1/2

2019.11.26 sed、shell-script-part0

2019.11.19 vim中的正则表达式、egrep中re的高级用法

  • 正则表达式在vi中的使用、egrep中的高级用法:板书
  • vi中的非贪心匹配:[a-z]\{-3,\} (负号就表示不贪心匹配 )
    • {-n,m}: 前面加一个负号
  • egrep中的非贪心匹配:egrep -o '[a-z]{3,}?'
  • magic模式,very magic模式:多大程度上将元字符看成元字符(用\可以转义为普通字符),而不是看成普通字符(用\转义为元字符)


下面这个网址的介绍很不错,值得仔细看一下。

https://www.cnblogs.com/penseur/archive/2011/02/25/1964522.html http://qianjigui.javaeye.com/blog/368449

2019.11.12 正则表达式part-2/3

后续在vim sed中继续深入学习和练习。

2019.11.5 正则表达式part-1

  • 从对读书的一些体会谈起
  只有读书才可能改变一个人;根据自己的兴趣去读书,不刻意选择读什么、读多少;读书最重要的是多思考;读书的最终目的是了解这个世界、了解自己、追求真知
  如果读一本书,不喜欢,就跳过或扔到一边,不要迷信任何书、任何人
  相信自己,凡事多问为什么,不要完全相信任何人,独立思考,尊重自己(自重),自己看重自己,不要看轻自己
  无论一个人多渺小,或者多富有(名利),所做的事情对世界都是有影响的,或善或恶。因此勿以恶小而为之,勿以善小而不为。每天都清醒、真诚、认真的活,活好自己仅有的一辈子。
  

2019.10.29 重定向、管道

2019.10.22 shell、通配符、find、egrep、重定向初步

2019.10.15 文本查看、vi

2019.10.8 文件权限、目录结构

   目录结构
       文件名命名规则
       绝对路径和相对路径
   权限rwx user group others

2019.9.24 man命令

2019.9.17 bash介绍、命令格式

 文字界面对应的进程(程序)是什么?在干嘛(功能)?(子进程、进程树)
 bash如何找到命令
 一些常用命令
 命令的格式和含义介绍
 写个C语言程序
  • 遗留问题:不是按照PATH中的顺序逐一找命令吗?是的。之前实验失败可能是因为bash有记忆或缓存?

2019.9.10 操作系统介绍、Windows和Linux的区别、文字终端下的命令

2019.9.3 个人、课程介绍;操作系统介绍