平时写的一些总结,以后复习用
操作系统:操作系统就是搞管理的软件,对下管理软硬件资源,对上提供良好的执行环境
库函数和系统调用接口的关系:上下级调用关系,库函数是系统调用的一层封装
自动补全
Tap 键,当文件中没有同名的文件时写前几个字母摁tap可以自动补全后面的单词
ctrl + c 结束当前程序或者操作的运行
shutdown -h now 立即关机
reboot 重启
基本命令:
ls 浏览目录
-a 查看所有文件,包括隐藏文件(Linux下以.开头的就是隐藏文件)
-l 查看文件详细信息
-S 按文件大小进行排序
-t 按时间排序
-r 按原先的排序进行逆排序
pwd打印当前所在路径(绝对路径)
绝对路径:
相对路径:
目录操作命令:
-cd改变当前所在路径
cd~ 表示切换到当前用户的家目录
cd- 返回上次所在路径
mkdir 创建目录
mk -p 递归创建
rmdir 删除空目录(删除链接数为0的目录)
rm 删除文件
rm -r递归删除(删除目录)
rm -f忽略提示信息
rm -rf忽略提示信息直接删除
cp 拷贝文件
cp -r拷贝目录
mv 移动文件/目录到指定目录下(剪切文件/目录)
-i添加提示信息
其他命令:
perror 打印上一次系统调用错误的信息
ifconfig 查看主机IP地址
man+指令可以得到该指令的详细描述
echo 打印字符串到显示终端上
>> 文件名字 (标准输出重定向)
su 切换当前用户(但是不切换当前所在路径)
u
ctrl + r
gg=G
zip 压缩文件 unzip 解压缩文件 gzip 打包 gunzip 解包 bzip2 bzip格式的压缩 bunzip bzip格式的解压缩
tar 压缩命令:
-c 打包
-x 解包
-z gip形式压缩/解压缩
-j bzip2格式压缩/解压缩
-v 显示详细的打包/解包信息
-f 指定压缩包的名称,后边紧跟包名称
bc 计算器
clear 清屏
stat 查看详细的文件元信息
匹配查找命令:(重点)
grep 在指定文件中匹配包含有指定字符串的行
-i 忽略大小写进行匹配
-v 匹配不包含指定字符串的文件内容(反向匹配)
-R 对指定目录下的所有文件进行递归匹配
find 文件查找
-name 按名字查找
-type 按类型查找 f普通文件 d目录文件
-mtime -atime -ctime -mmin -amin -cmin +/-n 按时间查找
-size 按大小查找 +/- n
时间命令:
cal日历命令
-3 查看当前月份附近共三个月的日历
-y 查看全年日历
-j 以一年中的第n天显示日历
date 显示当前系统时间日期
-s "2018-12-7 20:59:04" 设置当前系统时间
+' '以指定格式显示时间(如+'%F %T %Y-%m-%d %H:%M:%S')
+%s 显示时间戳,从1970到现在的秒数
文件操作命令:
touch 若文件不存在则创建一个文件,若文件已存在则刷新时间属性(常用后者)
-d 用指定格式刷新时间属性
-t 用另一种指定格式刷新时间属性
刷新的是最后一次访问和修改的时间
一个文件的时间属性有:
最后一次的访问时间
最后一次的修改时间
之后一次状态改变时间
cat 打印文件内容到显示终端(文件内容比较少的时候用)
-n 每一行带有行号
more 对文件内容进行分页显示(用于文件内容比较多的情况)
空格 向下翻页
b 向下翻页
q 退出
less 也是对文件内容进行分页显示(但是比more更加强大)
f/空格/pgdown 向下翻页
b/pgup 向上翻页
j和k/上下箭头 上下移动换行
/string 向下匹配string字符串
?string 向上匹配string字符串
n 继续匹配下一处位置
q退出
head 显示文件的前n行内容,默认是10行
-n 2 显示文件前2行内容
tail 显示文件末尾n行内容,默认10行
-n 2 用于显示文件末尾2行
-f 一直动态刷新文件末尾数据(动态查看日志文件)
标准输出重定向:
标准输出:显示终端
把原本写入到显示终端数据写入到另一个文件中
>> 标准输出重定向,新内容追加到文件末尾
> 标准输出重定向,删除原有内容,添加新数据
Linux下的目录结构:树形结构,最上层是根目录
Linux下一切皆文件,Linux下并不以文件后缀名区分文件
Linux是一个多任务多用户
工具:
xshell:远程登录工具
vmware:虚拟机软件,在我们电脑上虚拟出一个硬件环境
notepad++:文本编辑器(解决中文在Linux下出现乱码的情况)
shell的认识以及运行原理:
操作系统=操作系统内核+外部应用
命令行解释器:
操作系统内核不允许用户直接操作,因此使用命令行解释器来进行用户与内核之间的数据传递(shell就是内核和用户之间的桥梁)
权限:
用户:普通用户,超级管理员用户(权限)
文件的权限:
文件所有者 文件所属组 其他用户
rwx rwx r-x
文件的操作:
可读 可写 可执行
目录的操作:
可浏览 可创建/删除 可进入
rwx(可读可写可执行)--->111(用0和1表示权限的状态)---->7(八进制下的可读可写可执行)
权限相关操作命令
umask 设置/查看文件的创建权限掩码
777 & (~mask)
chmod 修改文件权限
两种方法 1. chmod 0777 file
2. chmod u+x(还有u-x,o+r g-w等等等等) file
useradd userdel chown chgrp
沾滞位:所有人都可以在目录下创建文件,可以删除自己的文件,但是不可以删除别人的文件
管道符 | : 连接两个命令,将前边命令的输出结果作为后边命令的输入,做处理
常用工具:
yum 软件包管理器:类似应用商店,在Linux下用的
软件安装过程:su root, yum list | grep (后面接要安装的东西), yum install(安装), yum remove(删除), yum install gcc, yum install gcc-c++, yum install gdb, yum install lrzsz.
vim文本编辑器:
模式切换:
普通模式切换插入模式:
i 从光标所在位置开始插入
a 从光标向后移动一个字符,开始插入
o 向光标所在行下方添加新行,开始插入
I(大写的i) 光标移动到行首,开始插入
A 光标移动到行尾,开始插入
O 向光标所在行上方添加新行,开始插入
插入模式切换成普通模式
ESC(一下不行多摁几下)
普通模式切换底行模式:
底行模式的操作:
:w 保存
:q 退出
:q! 强制退出(不保存)
:wq 保存并退出
:!pwd 临时执行命令,回车返回
普通模式下的操作:
移动光标: jkhl 上下左右移动
w b 按单词左右移动
ctrl +f +b 上下翻页
复制
yy 复制光标所在行
nyy 从光标所在行开始复制n行数据
复制一个单词的步骤
1.按v进入选中文本
2.移动光标选中文本
3.按y复制选中文本
4.按p粘贴到指定位置
粘贴
P(大写) 向光标所在行下方粘贴新行
p(小写) 向光标所在行上方粘贴新行
剪切
dd 剪切光标所在行
ndd 剪切光标所在行下n行数据
Linux下一些有用的工具:
gcc 编译器
makefile 辅助项目编译的工具
gdb 调试器
git