闵卫
minwei@tarena.com.cn
UNIX基础(2)
C语言(10)
编程基础
进制变换和运算符
流程控制
数组
函数
作用域
指针
预处理和大型程序
复合类型
IO流
第一课 UNIX基础
一、计算机系统组成
计算机系统
硬件
中央处理单元(CPU):执行指令、处理数据
内存储器:临时性存储数据和指令。
外存储器:持久海量存储数据和指令。
输入输出:人机、机机的数据交换。
软件
应用程序:提供实用功能。
操作系统:资源管理。
内核:直接面向硬件资源,进程,内存空间,网络通信,等等。
外壳(shell):界面。接受用户的输入,调用相应的程序,向用户提供输出。
Windows
Unix/Linux
Red Hat:支持平台最多。
Debian:最规范。
Ubuntu:简单,易用,安全。
Slackware:历史悠久,复杂,易用性差。
SUSE:德国。
Fedora:开源社区和Red Hat工程师合作。技术支持完善。
红旗:中科院软件所。中文支持完善。
iOS
Android
二、永远的Unix
1.史前:1961-1969
CTSS, Compatible Time-Shared System,小而简单。
Multics,复杂,庞大,崩溃。
Unics,简单实用。
2.诞生:1969-1971
1969, PDP-7小型机,星际旅行,可发工具和实用程序,Unix的内核。
1970,Ken在BCPL语言的基础上发明了B语言。汇编编写内核,B语言编写应用。
1971,第一个Unix应用,nroff,文字处理软件。PDP-11。
3.成长:1971-1980
1971,C语言,1973,用C语言重写了Unix内核。
1974,《美国计算机通信》上发表论文。
1979,AT&T Unix V7
4.战争:1980-1990
伯克利分校,BSD Unix,DARPA,BSD+TCP/IP
1983,AT&T被拆分,AT&T Unix System V产品化。第一次Unix战争。1985,IEEE POSIX规范。统一两个unix阵营。
1988,AT&T和Sun组成联盟,与IBM/DEC/HP组成的OSF对抗。第二次Unix战争。
1990,Windows 3.0,Microsoft帝国崛起。
5.反击:1991-1995
1990,BSD移植到386处理器。
1991,Linus Torvalds,宣布Linux项目。
1993-1994,互联网爆炸,分布式开发大大加速了Linux的发展。
1993底,完善期。
三、发展方向
1.服务器
政府 金融 电信 能源 邮政
21% 17% 16% 20% 19%
2.桌面系统
开源组织支持。
3.嵌入式
专用实时嵌入式系统 linux嵌入式系统
费用 昂贵 免费
移植 困难 容易
周期 难度大,周期长 简单,快速
实时 好 稍差
稳定 好 稍差
四、Unix的基本概念
1. shell
1) 用户和操作系统内核之间的界面,接受用户输入的指令,调用相应的程序,并将结果输出给用户。
2) 由多个命令组成的脚本,被shell解释器执行。其中除了命令之外还可以有变量、控制逻辑等高级语言元素。
3)常用的shell
b-sh:史蒂芬.伯恩,AT&T Unix System V,最早最知名,root提示符#,普通用户提示符$,bash是b-sh的增强版本。
csh:比尔.乔伊(vi的作者),BSD Unix,语法接近C语言,对b-sh不兼容,root提示符#,普通用户提示符%,tcsh是csh的增强版本。
2.文件系统
1)文件管理软件、文件数据、数据结构。
2)名词:
目录:包含其它目录或文件,用户可以在目录下面创建目录和文件。
子目录:位于其它目录下面的目录。
父目录:子目录的上层目录。
当前目录(工作目录):当前正在使用目录。用“.”标识。
主目录:用户登录时的初始当前目录。用"~"标识。
根目录:文件系统中最上一层的目录。用“/”标识。
文件:文件系统中的一段数据流。用文件名标识。
路径:目录或者文件位置的描述方法。
/home/soft02/c/day01/1.txt
/home/soft02/c/day01
绝对路径:以根目录为起点的路径描述方式。
相对路径:以当前目录为起点的路径描述方式。
假设当前目录/home/soft02/c
./day01/1.txt
./../a/1.txt
绝对:/home/soft02/c/day01/a/1.txt
五、常用命令
命令 -选项 参数
其中选项和参数可以没有,也可以由多个。注意空格还大小写。
1. 清屏:clear
2. 打印当前目录:pwd
3. 改变当前目录:cd
4. 显示目录的内容:ls
ls -a
显示全部内容,包括隐藏目录和文件。
ls -l
显示详细信息。
-:文件类型d(目录)/-(普通)/l(软链接)
rw-:属主权限r(读)/w(写)/x(执行)/-(没)
r--:属组权限
r--:其它权限
1:硬链接数
soft02:属主
soft02:属组
6:字节数
07-31 00:17:最后修改时间
1.txt:文件名
对于目录而言,写权限指可在该目录下增删子目录或文件。执行权限指可访问该目录中的内容。
5.修改权限:chmod
1)字符模式
chmod u/g/o/a +/-/= r/w/x
u:属主
g:属组
o:其它
a:所有
+:追加
-:减去
=:设置
r:读取
w:写入
x:执行
2)数字模式
chmod 数字 文件/目录
数字由三位组成,分别对应属主,属组合其它的权限,每个数字位从1,2,4中选出若干相加取和。
1:执行
2:写入
4:读取
chmod 644 1.txt
6.创建文件:touch
touch 文件名
创建一个拥有特定文件名的空文件。
7.创建目录:mkdir
mkdir 目录
mkdir -p 目录1/目录2/目录3
8.拷贝:cp
拷贝文件:cp 源文件 目标文件
原名拷贝文件:cp 源文件 存在目录
拷贝目录:cp -r 源目录 目标目录
原名拷贝目录:cp -r 源目录 存在目录
9.更名/移动:mv
更名文件:mv 源文件 目标文件
移动文件:mv 源文件 存在目录
更名目录:mv 源目录 目标目录
移动目录:mv 源目录 存在目录
10.删除:rm和rmdir
删除文件:rm 文件
删除目录:rm -r 目录
删除空目录:rmdir 目录
minwei@tarena.com.cn
UNIX基础(2)
C语言(10)
编程基础
进制变换和运算符
流程控制
数组
函数
作用域
指针
预处理和大型程序
复合类型
IO流
第一课 UNIX基础
一、计算机系统组成
计算机系统
硬件
中央处理单元(CPU):执行指令、处理数据
内存储器:临时性存储数据和指令。
外存储器:持久海量存储数据和指令。
输入输出:人机、机机的数据交换。
软件
应用程序:提供实用功能。
操作系统:资源管理。
内核:直接面向硬件资源,进程,内存空间,网络通信,等等。
外壳(shell):界面。接受用户的输入,调用相应的程序,向用户提供输出。
Windows
Unix/Linux
Red Hat:支持平台最多。
Debian:最规范。
Ubuntu:简单,易用,安全。
Slackware:历史悠久,复杂,易用性差。
SUSE:德国。
Fedora:开源社区和Red Hat工程师合作。技术支持完善。
红旗:中科院软件所。中文支持完善。
iOS
Android
二、永远的Unix
1.史前:1961-1969
CTSS, Compatible Time-Shared System,小而简单。
Multics,复杂,庞大,崩溃。
Unics,简单实用。
2.诞生:1969-1971
1969, PDP-7小型机,星际旅行,可发工具和实用程序,Unix的内核。
1970,Ken在BCPL语言的基础上发明了B语言。汇编编写内核,B语言编写应用。
1971,第一个Unix应用,nroff,文字处理软件。PDP-11。
3.成长:1971-1980
1971,C语言,1973,用C语言重写了Unix内核。
1974,《美国计算机通信》上发表论文。
1979,AT&T Unix V7
4.战争:1980-1990
伯克利分校,BSD Unix,DARPA,BSD+TCP/IP
1983,AT&T被拆分,AT&T Unix System V产品化。第一次Unix战争。1985,IEEE POSIX规范。统一两个unix阵营。
1988,AT&T和Sun组成联盟,与IBM/DEC/HP组成的OSF对抗。第二次Unix战争。
1990,Windows 3.0,Microsoft帝国崛起。
5.反击:1991-1995
1990,BSD移植到386处理器。
1991,Linus Torvalds,宣布Linux项目。
1993-1994,互联网爆炸,分布式开发大大加速了Linux的发展。
1993底,完善期。
三、发展方向
1.服务器
政府 金融 电信 能源 邮政
21% 17% 16% 20% 19%
2.桌面系统
开源组织支持。
3.嵌入式
专用实时嵌入式系统 linux嵌入式系统
费用 昂贵 免费
移植 困难 容易
周期 难度大,周期长 简单,快速
实时 好 稍差
稳定 好 稍差
四、Unix的基本概念
1. shell
1) 用户和操作系统内核之间的界面,接受用户输入的指令,调用相应的程序,并将结果输出给用户。
2) 由多个命令组成的脚本,被shell解释器执行。其中除了命令之外还可以有变量、控制逻辑等高级语言元素。
3)常用的shell
b-sh:史蒂芬.伯恩,AT&T Unix System V,最早最知名,root提示符#,普通用户提示符$,bash是b-sh的增强版本。
csh:比尔.乔伊(vi的作者),BSD Unix,语法接近C语言,对b-sh不兼容,root提示符#,普通用户提示符%,tcsh是csh的增强版本。
2.文件系统
1)文件管理软件、文件数据、数据结构。
2)名词:
目录:包含其它目录或文件,用户可以在目录下面创建目录和文件。
子目录:位于其它目录下面的目录。
父目录:子目录的上层目录。
当前目录(工作目录):当前正在使用目录。用“.”标识。
主目录:用户登录时的初始当前目录。用"~"标识。
根目录:文件系统中最上一层的目录。用“/”标识。
文件:文件系统中的一段数据流。用文件名标识。
路径:目录或者文件位置的描述方法。
/home/soft02/c/day01/1.txt
/home/soft02/c/day01
绝对路径:以根目录为起点的路径描述方式。
相对路径:以当前目录为起点的路径描述方式。
假设当前目录/home/soft02/c
./day01/1.txt
./../a/1.txt
绝对:/home/soft02/c/day01/a/1.txt
五、常用命令
命令 -选项 参数
其中选项和参数可以没有,也可以由多个。注意空格还大小写。
1. 清屏:clear
2. 打印当前目录:pwd
3. 改变当前目录:cd
4. 显示目录的内容:ls
ls -a
显示全部内容,包括隐藏目录和文件。
ls -l
显示详细信息。
-:文件类型d(目录)/-(普通)/l(软链接)
rw-:属主权限r(读)/w(写)/x(执行)/-(没)
r--:属组权限
r--:其它权限
1:硬链接数
soft02:属主
soft02:属组
6:字节数
07-31 00:17:最后修改时间
1.txt:文件名
对于目录而言,写权限指可在该目录下增删子目录或文件。执行权限指可访问该目录中的内容。
5.修改权限:chmod
1)字符模式
chmod u/g/o/a +/-/= r/w/x
u:属主
g:属组
o:其它
a:所有
+:追加
-:减去
=:设置
r:读取
w:写入
x:执行
2)数字模式
chmod 数字 文件/目录
数字由三位组成,分别对应属主,属组合其它的权限,每个数字位从1,2,4中选出若干相加取和。
1:执行
2:写入
4:读取
chmod 644 1.txt
6.创建文件:touch
touch 文件名
创建一个拥有特定文件名的空文件。
7.创建目录:mkdir
mkdir 目录
mkdir -p 目录1/目录2/目录3
8.拷贝:cp
拷贝文件:cp 源文件 目标文件
原名拷贝文件:cp 源文件 存在目录
拷贝目录:cp -r 源目录 目标目录
原名拷贝目录:cp -r 源目录 存在目录
9.更名/移动:mv
更名文件:mv 源文件 目标文件
移动文件:mv 源文件 存在目录
更名目录:mv 源目录 目标目录
移动目录:mv 源目录 存在目录
10.删除:rm和rmdir
删除文件:rm 文件
删除目录:rm -r 目录
删除空目录:rmdir 目录