《计算机教育中缺失的一课》笔记


课程在线地址:计算机教育中缺失的一课

笔记

  • Shell是程序的文字接口
  • Linux和macOS上使用/分割目录,Windows上使用 \
  • /是绝对路径,其他的都是相对路径
  • Windows上每个盘都有一个根目录(例如: C:\ )
  • 相对路径是指相对于当前目录的路径
  • 当前工作目录可以使用pwd命令来获取
  • 切换目录使用cd命令
  • 在路径中.表示当前目录,..表示上级目录
  • 如果没有指定路径,程序一般会在当前目录执行
  • man这个程序,它接受一个程序名作为参数,然后将它的文档(用户手册)展现给您
  • shell中,程序有两个主要的“流”,输入流和输出流
  • 我们可以重定向输入和输出流,最简单的重定向< file> file,这两个命令可以将程序的输入输出流分别重定向到文件。还可以向用>>来象一个文件追加内容
  • 使用管道(pipes),我们能够更好的利用文件重定向。|操作符允许我们将一个程序的输出和另一个程序的输入连接起来
  • |><是通过shell执行的,echo等程序并不知道|的存在,它们只知道从自己的输入输出流中进行读写
  • 对于大多数的类Unix系统,有一类用户是非常特殊的,那就是:跟用户(root user)
  • sudo命令,顾名思义,他的作用是让您可以以su(super user或root的简写)的身份执行一些操作
  • shell脚本是一种更加复杂的工具
  • shell脚本针对shell所从事的相关工作来进行优化,因此,创建命令流程(pipelines)、将结果保存到文件、从标准输入中读取输入,这些都是shell脚本中的原生操作,这让它比通用的脚本语言更易用。
  • 在bash中变量赋值的语法foo=bar
  • 访问变量中存储的数值的语法为$foo
  • foo = bar(使用空格隔开)是不能正确工作的,解释器会调用程序foo并将=bar作为参数
  • '定义的字符串为原义字符串,其中的变量不会被转义;"定义的字符串会将变量值进行替换
  • bash函数例子: mcd () { mkdir -p "$1" cd "$1" }
  • history | grep find 会打印包含find字串的命令
  • 使用Ctrl+R对历史命令记录进行回溯搜索
  • 命令的开头加上一个空格,它就不会被加进shell记录中
  • 可以通过编辑.bash_history.zhistory来手动从历史记录中移除记录项

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注