【Unix】分章复习笔记之第一章 · 基础知识

【Unix 】分章复习笔记之第一章 · 基础知识

1.1 UNIX体系结构

【Unix】分章复习笔记之第一章 · 基础知识

  • 内核:操作系统中控制硬件资源、提供程序运行环境的核心部分。

  • 系统调用:内核的接口

  • 公用函数库:搭建于系统调用之上

  • shell特殊的应用程序,为其他应用程序提供接口。

1.2 Shell

  • 俗称壳(用来区别于核),是指 “提供使用者使用界面”的软件命令解析器)。

  • Shell作为程序,是一个具有交互性的命令行解释器。它独 立于操作系统。Shell的作用在于等你键入命令,执行一些 特定的功能,然后将经它解释的命令传到操作系统执行。

  • Shell的输入通常来自用户终端(交互),也可以来自文件 (Shell脚本)。

常见的Shell有Bash,他是一个GNU shell。所有的Linux都提供Bash服务,它的设计遵循IEEE POSIX标准。

1.3 UNIX目录结构

【Unix】分章复习笔记之第一章 · 基础知识

"/"是表示根目录,它是所有文件绝对路径的起点。

  • 一个文件的目录是由根目录到该文件的路径上 所有节点名按顺序构成的,相互之间用“/”分开

  • **家目录:**当UNIX创建一个用户的时候,通常情况下会==创建一个与用户名称相同的目录供该用户使用。==这个目录所在的位置就叫做家目录(起始目录)。
    【Unix】分章复习笔记之第一章 · 基础知识

1.4 绝对路径和相对路径

绝对路径 相对路径
完全指定文件或目录位置的方法,从根目录开始 永远起始于你的当前位置
永远以“/”开头 永远不会以“/”开头
不受当前位置的影响,在整个UNIX 系统中是唯一的 仅仅相对与你当前位置才能保证唯一

【Unix】分章复习笔记之第一章 · 基础知识

  • 这两个特殊的目录存在于所有的目录中,“/”也不例外

  • 在根目录下,".","…"均指向本目录(即根目录);

  • 其他情况下,点(.)代表你当前的目录位置,点点(…)代表你当前目录对上一层的位置(又称为父目录)

1.5 UNIX的文件访问权限

  • 在UNIX中,每个文件都归某个系统用户所有文件的所有者对于谁有权访问文件有最终的控制权。 所有者有权允许或禁止其他用户访问其所有的文件

  • 文件的访问控制结构有三层:User:文件所有者;Group:能访问该文件的组;Other:系统中所有的其他用户。

在文件的权限控制中,访问类型有三种:

执行
r w x

【Unix】分章复习笔记之第一章 · 基础知识

我们来看,给出的总共有10位权限,其中第一位永远为“-”或“d”,当为d时表明其为目录。

剩下的9位分别按照文件所有者(user),与文件所有者同组的(group),其他(others)的顺序依次排列。

1.6 I/O重定向和管道

【Unix】分章复习笔记之第一章 · 基础知识

见上图。文件描述符0,1,2分别标志着标准输入,标准输出和标准错误(stdin,stdout,stderr),进程通过文件描述符来管理打开的文件。

【Unix】分章复习笔记之第一章 · 基础知识

UNIX所有的程序执行时,均需要资料的输入以及输出资料,一般而言,资料是从键盘输入,并将资料输出到荧幕上,这就叫做标准输入及标准输出,而我们可以更改标准输入输出。

  • 更改标准输入——在命令后方加“< filename”,即可从filename这个文档输入资料。
  • 更改标准输出——在命令后方加“> filename”,即可将荧幕输出的资料导向到filename这个文档上,会覆盖文档原内容。
  • 更改标准输出——在命令后方加“>> filename”,功能与上一条相似,只不过这会将资料加在文档最后。
  • 管道——在两个命令中间加上‘|’,即可将前方指令的输出 当成后方指令的输入。

1.7 其他的一些UNIX基本的操作这里就不在赘述。提高使用频率就能熟练使用这些命令。

命令 效果 用法示例和flags
ls 列出目录内容 ls < flag> 路径名 flag:-a -l -F
cd 改变当前目录 cd /home/ubuntu
pwd 显示当前目录 pwd
mkdir 新建目录 mkdir MCServer
rmdir 删除目录 rmdir MCServer
cat,more,less 显示文件内容 cat一下子列出文件的所有内容。当一屏显示不完,more逐屏显示
touch 修改时间 将每个文件的访问和修改时间设置为当前时间。若不存在则新建
cp 复制文件 cp hello ./test/hello
rm 删除文件 -f -i -r -v
mv 重命名或移动文件 自己查,我懒!
find 查找文件 自己查,我懒!
grep 查找文件内容 自己查,我懒!
tail 显示文件尾部内容 自己查,我懒!
chmod 更改文件或目录访问权限 自己查,我懒!
diff 比较文档 自己查,我懒!
whoami 显示的是使用本地终端的用户登录名 自己查,我懒!
ps 显示进程 ps aux显示所有用户的进程,ps ux:显示本用户的进程
kill 杀死一个进程 kill -l,列出所有信号,kill [-s signal] pid:杀死进程
top 自己查,我懒! 展示当前系统所有的进程以及一些系统信息如 内存
logout/exit 退出系统
who 自己查,我懒! 显示登录到系统的用户列表,以及TTY端口和登录日期、时间。
man 显示命令的帮助文档 自己查,我懒!
passwd 修改密码 自己查,我懒!
clear 清除屏幕上的输出 自己查,我懒!
其他 自己查,我懒! 自己查,我懒!