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

来自SUDA-HLT
跳到导航 跳到搜索
(建立内容为“== 课程安排 == * 老师: [http://web.suda.edu.cn/zhli13/ 李正华] * 助教:xx * 计24计科1班,计24计科2班(大三上) * 专业选修课 * 上课…”的新页面)
 
 
(未显示2个用户的5个中间版本)
第1行: 第1行:
 
== 课程安排 ==
 
== 课程安排 ==
 
* 老师: [http://web.suda.edu.cn/zhli13/ 李正华]
 
* 老师: [http://web.suda.edu.cn/zhli13/ 李正华]
* 助教:xx
+
* 助教:顾天宇
 
* 计24计科1班,计24计科2班(大三上)
 
* 计24计科1班,计24计科2班(大三上)
 
* 专业选修课
 
* 专业选修课
 
* 上课时间和地点
 
* 上课时间和地点
 +
** QQ群:705869759
 
** 理论课:周一 6-7节 14:00-15:35 逸夫楼334  【1-17周】
 
** 理论课:周一 6-7节 14:00-15:35 逸夫楼334  【1-17周】
 
** 实践课:周三 1-2节 8:00-9:35 理工楼243 【单周】
 
** 实践课:周三 1-2节 8:00-9:35 理工楼243 【单周】
 +
* 课程成绩构成(拟):平时10%(考勤等)、实验成绩30%(实验报告、随堂考试)、期末60%(闭卷)
 +
 +
== 注意事项 ==
 +
* <span style="color: #ff0000;">上机课做学习无关的事情,发现则平时和实验成绩为0 </span>
 +
 +
== 自学资料 ==
 +
 +
* [http://hlt.suda.edu.cn/index.php/Linux-video-notes 2018年春季上课视频和笔记]
 +
* [http://hlt.suda.edu.cn/index.php/Linux-2025-fall 2025年秋上课板书]
 +
* [http://hlt.suda.edu.cn/index.php/Linux-2024-fall 2024年秋上课板书]
 +
* [http://hlt.suda.edu.cn/index.php/Linux-2024-spring 2024年春上课板书]
 +
 +
== 参考书 ==
 +
 +
* 有问题,问大模型!
 +
 +
* Unix & Linux大学教程 哈恩(Harley Hahn) (作者), 张杰良 (译者) 【基础内容、讲得比较细;图书馆可以借】
 +
 +
* 跟阿铭学Linux 李世明 人民邮电出版社 【难度适中,我们只学前半部分】
 +
 +
 +
 +
== 板书和笔记 ==
 +
 +
=== TODO ===
 +
 +
<nowiki>
 +
 +
arr+=(3) 【数组增加一个元素】
 +
 +
b=($(cat a.txt)) 【外面的()必须有,否则 b 就不是一个数组了。而是一个字符串了】
 +
 +
a=($(echo 'a b')) 【a 是一个数组了】
 +
 +
read -a arr <<< 'a b c'  【读入数组,arr 会包含三个元素,默认空白符为分隔符】
 +
 +
IFS=',' read -a arr <<< $x  【默认是空格,IFS 可以改】【不会跨行的】
 +
 +
IFS='\n' read -a arr < a.txt 【不会跨行的,只会处理第一行??】
 +
 +
read x y z <<< '1 2 3' 【第三个变量】
 +
 +
read -a arr < a.txt 【只处理第一行】
 +
IFS=','
 +
while read -a arr; do echo ${arr[1]}; done < a.txt 【每一行输出一次】
 +
 +
while read name; do echo $name; done < a.txt  【read 和重定向的配合】
 +
 +
while read -d ',' name; do echo $name; done < a.txt 【-d 是 delimiter,默认是换行符,没遇到一个 delimiter,就会返回一个,最后一个元素后面必须有 delimiter】
 +
a.txt: a,b,c,
 +
 +
 +
awk 中变量直接写,不用取值符,如 print x, y, z
 +
 +
awk 'BEGIN {FS=",";OFS="#"}; {print $1, $2}' a.txt
 +
 +
awk -F',' 'BEGIN {OFS="#"}; {print $1, $2}' a.txt
 +
 +
awk -F'\n\r' '{print NF}' a.txt  【每一行一个记录,每个记录只有一个 field,因此会输出多个 1,一行对应一个】
 +
 +
 +
sed 's/a/A/g' <<< 'aaa'  字符串的重定向,很有用,应该讲!
 +
 +
a=($(sed 's/,/ /g' <<< 'a,b')) 【a 是数组了】
 +
 +
 +
</nowiki>
 +
 +
=== Lesson 2(2026.9.14;第2周) ===
 +
 +
<gallery>
 +
Linux-2026-fall-week2-merged.jpg
 +
</gallery>
 +
 +
 +
* shell基本使用、父shell、子shell
 +
* Shell提示符、ls命令、cd命令
 +
* 命令语法、命令行参数、python的sys.argv接收参数
 +
* 所使用到的命令
 +
1998  bc
 +
1999  echo 'hi'
 +
2000  x=7
 +
2001  y='hello world'
 +
2002  echo $x
 +
2003  echo $y
 +
2004  echo $$
 +
2005  bash
 +
2006  /bin空白/echo $$ (替换"空白"为"")
 +
2007  man echo
 +
2008  ls
 +
2009  ls -l
 +
2010  cd linux/
 +
2011  ls
 +
2012  ls -l
 +
2013  cd awk/
 +
2014  ls
 +
2015  ls -l
 +
2016  ls -a
 +
2017  ls
 +
2018  s
 +
2019  ls -a
 +
2020  cd ..
 +
2021  find cmd
 +
2022  find . -name '*.py'
 +
2023  vi cmdline-arg.py
 +
 +
 +
=== Lesson 1(2026.9.7;第1周) ===
 +
 +
<gallery>
 +
Linux-2026-fall-week1-merged.jpg
 +
</gallery>
 +
 +
 +
* 课程介绍、个人介绍
 +
* Linux介绍、安装
 +
* 运行状态、init
 +
* 图形界面GUI、文字界面CLI
 +
* 系统组成、shell初介绍
 +
* 所使用到的命令
 +
1984  ps afx | egrep gnome
 +
1985  ps afx | egrep kde
 +
1986  sudo init 3
 +
1988  ps afx | egrep bash
 +
1989  exit
 +
1990  man init
 +
1991  echo $SHELL
 +
1992  ps afx | egrep bash
 +
1993  bash
 +
1994  ps afx | egrep bash
 +
1995  exit

2026年9月16日 (三) 04:11的最新版本

课程安排

  • 老师: 李正华
  • 助教:顾天宇
  • 计24计科1班,计24计科2班(大三上)
  • 专业选修课
  • 上课时间和地点
    • QQ群:705869759
    • 理论课:周一 6-7节 14:00-15:35 逸夫楼334 【1-17周】
    • 实践课:周三 1-2节 8:00-9:35 理工楼243 【单周】
  • 课程成绩构成(拟):平时10%(考勤等)、实验成绩30%(实验报告、随堂考试)、期末60%(闭卷)

注意事项

  • 上机课做学习无关的事情,发现则平时和实验成绩为0

自学资料

参考书

  • 有问题,问大模型!
  • Unix & Linux大学教程 哈恩(Harley Hahn) (作者), 张杰良 (译者) 【基础内容、讲得比较细;图书馆可以借】
  • 跟阿铭学Linux 李世明 人民邮电出版社 【难度适中,我们只学前半部分】


板书和笔记

TODO


arr+=(3) 【数组增加一个元素】

b=($(cat a.txt)) 【外面的()必须有,否则 b 就不是一个数组了。而是一个字符串了】

a=($(echo 'a b')) 【a 是一个数组了】

read -a arr <<< 'a b c'  【读入数组,arr 会包含三个元素,默认空白符为分隔符】

IFS=',' read -a arr <<< $x  【默认是空格,IFS 可以改】【不会跨行的】

IFS='\n' read -a arr < a.txt 【不会跨行的,只会处理第一行??】

read x y z <<< '1 2 3' 【第三个变量】

read -a arr < a.txt 【只处理第一行】
IFS=','
while read -a arr; do echo ${arr[1]}; done < a.txt 【每一行输出一次】

while read name; do echo $name; done < a.txt  【read 和重定向的配合】

while read -d ',' name; do echo $name; done < a.txt 【-d 是 delimiter,默认是换行符,没遇到一个 delimiter,就会返回一个,最后一个元素后面必须有 delimiter】
a.txt: a,b,c,


awk 中变量直接写,不用取值符,如 print x, y, z

awk 'BEGIN {FS=",";OFS="#"}; {print $1, $2}' a.txt

awk -F',' 'BEGIN {OFS="#"}; {print $1, $2}' a.txt

awk -F'\n\r' '{print NF}' a.txt  【每一行一个记录,每个记录只有一个 field,因此会输出多个 1,一行对应一个】


sed 's/a/A/g' <<< 'aaa'  字符串的重定向,很有用,应该讲!

a=($(sed 's/,/ /g' <<< 'a,b')) 【a 是数组了】



Lesson 2(2026.9.14;第2周)


  • shell基本使用、父shell、子shell
  • Shell提示符、ls命令、cd命令
  • 命令语法、命令行参数、python的sys.argv接收参数
  • 所使用到的命令
1998  bc
1999  echo 'hi'
2000  x=7
2001  y='hello world'
2002  echo $x
2003  echo $y
2004  echo $$
2005  bash
2006  /bin空白/echo $$ (替换"空白"为"")
2007  man echo
2008  ls
2009  ls -l
2010  cd linux/
2011  ls
2012  ls -l
2013  cd awk/
2014  ls
2015  ls -l
2016  ls -a
2017  ls
2018  s
2019  ls -a
2020  cd ..
2021  find cmd
2022  find . -name '*.py'
2023  vi cmdline-arg.py


Lesson 1(2026.9.7;第1周)


  • 课程介绍、个人介绍
  • Linux介绍、安装
  • 运行状态、init
  • 图形界面GUI、文字界面CLI
  • 系统组成、shell初介绍
  • 所使用到的命令
1984  ps afx | egrep gnome
1985  ps afx | egrep kde
1986  sudo init 3
1988  ps afx | egrep bash
1989  exit
1990  man init
1991  echo $SHELL
1992  ps afx | egrep bash
1993  bash
1994  ps afx | egrep bash
1995  exit