一、复习第一周的大致内容:
1、UNIX与Linux、ubuntu系统
UNIX是1971年贝尔实验室的肯·汤普逊、丹尼斯·里奇,合作研发一款通过的操作系统,多用户、多任务、安全、稳定,收费。
Linux是林纳克斯·托瓦斯的仿照UNIX系统写的一份期末作业,然后他把源码分享在了FTP站点了,然后在全世界程序员的努力下合作开发出一套类UNIX的操作系统,它继承了UNIX的很多优点,而且开源免费。
ubuntu它是基于Linux增加了界面和一些常用的应用软件,而开发出的一套适合普通人使用的Linux系统,叫作Linux的发行版系统,与它类型似的:红旗、中标麒麟、中兴新支点、深度。
2、文件系统
bin 目录下存储的是一些常用的系统命令
sbin 目录下存储的是一些管理用户才能使用的高级命令
boot 目录下存储的是系统启动所需要的数据
dev 目录下存储的是硬件设备文件
etc 目录下存储的是操作系统的各种配置文件
home 目录下存储的是用户主目录,home下会为每个系统用户创建一个以用户名命名的目录(用户主目录),该对它有绝对的控制,一般也只在该目录下操作。
lib 目录下存储是库文件(代码库)
media 目录下存储的是多媒体设备,比如光盘、U盘、共享文件夹。
整个文件系统是以树型结构管理的,可以上下进入,不能左右进入。
它是专门负责管理硬盘上文件的软件,以目录树的形式来管理硬盘上的文件。
最顶层目录叫根目录 用/表示
在home目录每个用户都一个属于它自己的目录,叫用户主目录,是以用户名命名的,用~表示
… 表示上一级目录,.表示当前目录
文件系统中用于描述文件位置的叫路径,从要根目录开始详细描述一个文件的位置称作绝对路径(/home/sll/test.txt),从当前目录开始描述一个文件的位置称作相对路径(…/test/test.txt)。
3、文件相关命令
touch、mv、cp、rm、cat
4、目录相关命令
mkdir、rm -rf、rmdir、cp -frp、cd
5、网络相关命令
ifconfig/ipconfig、ping、telnet/ssh、ftp/tftp
6、其它相关命令
clear、ls、pwd、find、grep、chmod、sudo、tar
7、通配符、管道、重定位
通配符:用于匹配文件名的,*、?
管道:把一条件命令的执行结果当作另一命令的数据源,cmd | cmd
重定位:把命令执行结果从原来显示到颖转为写入文件,>、>>。
8、链接文件
类似于windows下的快捷方式,但又不同,有软链接和硬链接。
ln 源文件 链接文件,默认创建出来的叫硬链接。
ln -s 源文件 链接文件,创建软链接。
注意:硬链接是直接链接数据,而软链接是链接一个位置,区别就是链接目标被删除后,硬链接能够正常访问,而软链接不能再访问。
9、终端的使用技巧
tab 可以自动补全
up/down 调出历史记录
man 查看命令、函数帮助
man n key
n:1 查命令
n:2 查系统调用
n:3 查C标准库函数
Ctrl+Alt+T 打开终端
Ctrl+Shift+T 新建终端标签页
Home 光标跳转到行首
End 光标跳转到行尾
二、vim文件编辑器(新内容)
vim是终端(可以在远程登录时使用)下可以使用的文本编辑器,它采用纯键盘进行操作(效率高但学习难度大),支持扩展,是一款成长型文本编辑器。
一般UNIX/Linux系统都会自带vi,而vim是它的增强版,需要安装才能使用,ubuntu系统:sudo apt-get install vim
1、vim的简单用法
vim hello.c 进入vim,如果文件不存在则创建。
按i键,进入插入模式,可以编辑文件。
按ESC键,输入:x,保存退出。
2、vim有三大主要模式
正常模式:vim刚进入进的模式,此模式下适合阅读、修改文件,有大量的快捷键可供使用。
插入模式:按i键可进入插入模式,此模式下用来编辑文件。
行底模式:在正常模式下输入:,此模式下可以执行一些命令,对vim进行一些设置。
3、vim的模式切换
正常 i 插入
插入 Esc 正常
正常 : 行底
行底 Esc 正常
注意:插入与行底模式不能相互转换,必须通过正常模式中转。
4、正常模式下的快捷键
i 在光标前面进入插入模式
I 光标跳转到行首进入插入模式
a 在光标后面进入插入模式
A 光标跳转到行尾进入插入模式
o 在下面创建一个空白行进入插入模式
O 在上面创建一个空白行进入插入模式
x/del 删除一个字符
dw/de 删除一个单词
D/d$ 删除到行尾
dd 删除一行
n(数字)dd 删除n行
注意:删除后内容还保留(最后一次)在缓冲区中,使用p粘贴(下面)出来,这样达到移动代码的效果。
yy 复制一行
n(数字)yy 复制n行
注意:要配合p使用
u 撤销一次操作
U 撤销一行操作,只能撤销一行(最近一次修改的行)。
Ctrl+r 取消撤销操作
r 替换一个字符
cw 替换一个单词(删除单词并进入插入模式)
n+Enter 光标向下移动n行
n+G 光标移动到第n行
gg 回到文件开头位置
G 回到文件末尾位置
hjkl 左下上右
vim file.c +n 进入vim后光标跳转到第n行
5、插入模式下的操作(为了能使使用者的手放在主键盘区)
Ctrl+i 功能与tab键一样,写代码时能够对齐。
Ctrl+j 功能与Enter键一样
Ctrl+c 功能与Esc键一样
Ctrl+p 自动补全
6、行底模式下的操作
w 保存
q 退出
wq 保存退出
x 保存退出
X 加密
/key 查找,n查找下一个,N查找上一个
%s/old/new 替换单词
!cmd 执行Linux系统命令
set nu 显示行号
set nonu 不显示行号
set ts=4 设置tab键宽度
注意:行底模式下设置只是临时有效,一旦vim退出就失效了,把设置命令写入配置文件就可以长期有效了,配置文件在主目录下.vimrc。
7、学习建议(学长)
1、vim操作有点复杂,不是一学就会,需要一段刻意练习,ubuntu中有自带的教程,vimtutor。
2、vim支持很多插件可以扩展,但不建议使用,适可而止。
三、shell脚本
可以把shell脚本理解为可以执行的文本文件,里记录了一些系统命令(外加一些变量、函数、流程控制语句)。
如:
1、项目构建脚本
2、批量打开脚本
3、编译脚本
四、C语言介绍
起源:1969贝尔实验室的肯·汤普逊、丹尼斯·里奇想使用BCPL开发一款操作系统,在开发过程中发现原有的编程语言有缺陷,他们就对BCPL做了升级,简称newB,然后再次开过系统,之后将newB进一步完善,也就有了现在的C,他们合作开发的操作系统就是UNIX。
发展:各家公司都制定了自己的C语言标准,导致C语言无法通用、移植性差,在美国电气工程师协会的组织,于1989年制定出C语言的第版语法标准——C89;经过一段时间的发展于1999年制定出的第二版讲法标准——C99,对C语言进行了完善和增强;到2000年以后各种高级编程异军突起,C语言的市场占有率逐渐下降,于2011年制定出新语法标准——C11,此版本融合了众多编程语言的优点,几乎可以说是进行了全新的设计,但目前用的不多。
特点:
1、C语言是为编写操作而设计一门编程语言。
2、肯·汤普逊、丹尼斯·里奇在设计之前没有想到普通人也能用上电脑,因此C语言的语法检查不严格,存在一些天然的漏洞和缺陷。
3、C语言特别适合对硬件直接编程,运行速度快、节约硬件资源,所以特别适合对嵌入式开发。
4、C语言运行速度快,因此也非常合适开发高性能服务器,实现一些软件的核心算法。
5、C语法特别自由,自由源于自律。
注意:闯红灯没被撞死(程序能够运行,但不代表程序正确)