随便写点什么、复习总结—基于linux的c语言编程
- 第一次写博客,意外的是CSDN的账号五年前我就注册了,转眼现在大学已经过去了三年。临近毕业,兜兜转转,我进入了c/c++的培训,又捡起了这个偶然注册的账号,一瞬间仿佛现在的时间又和五年前的某天连在了一起。
- 因为刚开始学习,之前也不是这个专业的,可能有些地方不怎么详细后续会进行补充。若是有什么错误的地方,还请指正,感谢。
Liunx系统介绍:
演变史:
BCPL(基本组合编程语言)–> New B --> C(第一个高级语言) --> UNIX --> Minix --> Linux --> gcc(Linux编译器)
Linux的硬盘管理能力十分强大,只有一个分区(/根目录)。
/ 根目录,全部文件存在它下面
bin 存储系统命令文件
media 多媒体目录,u盘、光盘、挂载的目录
home 用户主目录,自动生成同用户名的用户主目录
usr 存储头文件
. 当前目录
. . 上一级目录
~ 用户主目录
Linux的目录结构是呈倒悬树,目录的切换只能上下级切换,不能从一个目录中直接跳转到另一个目录中。
常用的Linux系统命令:
常用的命令:
ls 显示当前目录下的文件
-a 显示当前目录所有文件
-l 以长格式显示文件的详细信息
cd 进入一个目录
clear 清理屏幕 Ctrl+l
pwd 显示当前绝对路径
whoami 显示当前用户名
文件相关的命令:
touch filename 创建文件
rm filename 删除文件 不经过回收站,谨慎使用
cat/head/tail/more 查看文件
cat 把文件全部内容显示到终端,适合显示少量内容的文件
more 只显示文件的开头,按页查看,回车下一行,空格下一页
head 只显示开头前10行
tail 只显示末尾后10行
cp src dest 复制文件 具备重命名功能
mv src dest 移动文件 具备重命名功能
目录相关的命令:
mkdir 创建空目录
rmdir 只能删除空目录
rm -rf 可以删除非空目录
cp -rf 复制非空目录
mv 移动目录
man key 帮助手册:
分章节管理
man [n] key 查看man帮助手册
[n] = 1 系统命令
[n] = 2 系统调用
[n] = 3 C语言标准库函数
Linux使用小技巧:
up/down方向键上下 可以调出历史命令
Ctrl+Alt+t 打开终端
tab 可以快速补全命令、文件名
Ctrl+l 清屏
*网络相关的命令,还没学到相关内容,之后之后再补充。。。
vim文本编辑器:
在终端下使用的纯键盘操作的一款文本编辑器,号称“编译器之神”(有点中二),可以升级(二次开发)。
基本用法:
进入vim filemane 文件存在则打开,不存在则创建并打开(以正常模式进入)
输入i进入编辑模式 编写代码
保存退出: 返回正常模式Esc 输入zz保存退出
vim的三大模式:
正常模式: 一般用于阅读文件、或者使用快捷键快速修改文件
插入模式: 一般用于编辑文件,输入内容
行底模式: 一般用于对vim编译器的配置,或者执行一些高级操作
模式之间切换:
正常 -> i -> 插入
插入 -> Esc -> 正常
正常 -> : -> 行底
行底 -> Esc -> 正常
正常模式的操作:
光标移动:
h j k l 左/下/上/右
gg 光标回到第一行
nG 跳转到第n行
vim filename +n 跳转到第n行打开删除代码:
dd 删除一行
ndd 删除n行
x 删除一个字符
nx 删除n个字符复制代码:
yy 复制一行
nyy 复制n行
p 粘贴到当前行的下一行
P 粘贴到当前行的上一行移动代码:
删除的内容还在粘贴板,使用p\P可以移动删除的代码到想要的位置
撤销操作:
u 撤销上一次操作
Ctrl+r 取消上一次的撤销操作
进入插入模式:
i 在当前光标处前面进入插入模式
a 在当前光标处后面进入插入模式
I 在行首进入插入模式
A 在行尾进入插入模式
o 在当前光标的下一行进入插入模式
O 在当前光标的上一行进入插入模式
插入模式Ctrl+p 自动补全
行底模式:
set nonu/nu 设置行号/取消行号 只有当次有效
q 退出
w 保存
wq 保存退出
/key 查询关键词key n向下查 N向上查
%s/old/new 把old替换为new
<n 向左缩进n行
>n 向右缩进n行