vim 编辑器{
vim 文件名 -----> 编辑该文件
3种模式 : 插入 命令行 底行
插入模式
{
i ----> 插入光标当前位置
o ----> 插入光标下一行
a ----> 插入光标的后一位置
s ----> 插入光标所在位置 ---> 并删除光标所在字符 ----> 替换
}
ESC ----> 退出插入模式 进入 命令行 模式
命令行模式
{
复制: Nyy ---> 从光标所在行开始复制 N行
粘贴: p ---> 粘贴到光标下一行
删除: Ndd ---> 从光标所在行开始删除 N行 ---> 类似于剪切
撤销: u
}
底行模式 ESC ---> 切换到命令行模式
{
shift + : ----> 进入底行模式
w ----> 写入 ----> 保存
q ----> 退出
q! ----> 强制退出
wq wq! x(等价于wq)
vsp 文件名 ----> 可以编辑另一个文件
}
}
TAB----> 补齐
linux下软件包机制{
软件之间 有 依赖关系
redhat ---> rpm软件包机制 ----> rpm [-p -i -u ] install- filename ..
debian ---> deb软件包机制 ----> apt ----> 联网 (搜索软件源 ----> 查找对应软件依赖完成安装)
dpkg ---> 软件包已经下载好了 离线安装
后缀 ---> .deb
软件包 : 源码包 ----> 需要自己编译
二进制文件 -----> 可以直接安装
dpkg
{
dpkg -i
dpkg -r
dpkg -P
//dpkg -L
//dpkg -s
}
apt
{
1、设置软件源 ---> 选择下载软件的服务器 // /etc/apt/sources.list
2、从软件源中获取软件索引文件 // sudo apt-get update
添加服务器的软件包的索引文件。 存放在: /var/lib/apt/lists/目录中
apt-get:用于管理软件包,包括安装、卸载、升级等操作;
apt-get subcommands [ --purge | --reinstall ] pkg
update: 更新软件包列表信息
install: 下载安装包
remove: 卸载
clean: 删除所有已经下载的软件包
check: 检测依赖关系
source: 下载源码包
--purge ----> 和remove 连用 完全卸载 会删除 所有依赖
--reinstall ----> 和 install 连用 重新下载的意思
// 下载的 软件包 /var/cache/apt/archives
apt-cache:用于查询软件包信息;
//apt-proxy:用于搭建APT代理服务器;
//apt-show-versions:用于显示系统中软件包版本信息;
//apt-config:用于读取APT配置文件的简单工具;
//apt-cdrom:用于将CD-ROM加入软件源配置文件。
}
}
farsight@ubuntu:~/1709linux/day2$
用户名@主机名:当前目录名 $(命令行提示符) #(超级用户命令行提示符)
shell基本命令{
shell ---> 解释器 ---> 用户 和 内核的交互
shell{
sh
csh
ksh
bash ----> 增强版 ----> 综合了上面的所有shell
}
shell 脚本 : 命令的集合 ----> 批量化处理一些命令
关机: sudo shutdown -h now // 立刻关机
sudo shutdown -h +60 // 60min 后 关机
sudo shutdown -h +60 "byebye" // 提示关机并且通知
重启: sudo shutdown -r now // 立即重启
sudo shutdown -r +60 // 60min 后重启
sudo reboot now // 立即重启
命令格式: Command [-Options] Argument1 Argument2 … // 用空格 间隔
指令 选项 参数1 参数2…
多条命令 用 ;分号 隔开
//如果一条命令不能在一行写完,在行尾使用反斜杠(\)标明该条命令未结束。
/ ----> 根目录 -----> 所有目录的起点
~ ----> 家目录 ---> /home/farsight
查询命令历史 : history
pwd :查看当前绝对路径
ls : 查看当前 路径下 的 文件
// ls ---> 查看当前路径下的所有文件 但是不包含隐藏文件(linux下隐藏文件 以.开头)
cd 路径名 : 跳转到指定路径
绝对路径: 从 根目录开始的路径
相对路径: 相对对当前位置的路径
. ---> 当前路径 .. ----> 当前路径的上一级路径
mkdir 路径名 : 创建文件夹
rm -r 目录名 删除文件夹
touch 文件名 ---> 创建文件
rm 文件名 ----> 删除文件
cp 源文件 目标文件 ---> 拷贝
mv 源文件 目标文件 ---> 移动 重命名
cat 文件 ---> 在终端打印显示当前文件
echo 目标 ----> 在终端中输出某目标
}
通配符{
* ----> 匹配任意长度的字符串
? ----> 匹配一个长度的字符
方括号([…]) ----> [匹配其中指定的一个字符]
方括号([ - ]) ----> 代表字符范围
方括号([^…] ----> [匹配 除了指定的一个字符之外的 字符]
}
管道{ |
管道可以把一系列命令连接起来,意味着第一个命令的输出将作为第二个命令的输入
// cat 2.c | wc -w
}
命令置换{ ``
命令替换是将一个命令的输出作为另一个命令的参数
// ls `pwd` ---> 将pwd 的结果作为 ls 的参数
}
输入输出重定向{
输出重定向{ // 文件不存在 会创建
正确结果重定向 1> file (>)
错误结果重定向 2> file (&>)
>> file -----> 以追加的方式 重定向到文件
}
输入重定向{
< file ----> 将file 作为输入源输入给命令
}
}
用户命令{
添加用户: sudo adduser llcc //会自动家目录创建一个用户目录
修改密码: sudo passwd llcc
修改用户名: sudo usermod -d /home/lc -m -l lc llcc //必须修改用户目录名
修变用户的组: sudo usermod –g farsight user1 // 修改组名
删除用户: sudo deluser --remove-home llcc // 删除用户的同时 删除家目录
删除组: sudo delgroup llcc
}
进程{
ps:
-ef ----> 列举所有进程 并且列举详细信息!
-A 列出所有的行程
-w 显示加宽可以显示较多的资讯
-au 显示较详细的资讯
-aux 显示所有包含其他使用者的行程
top: ----->动态查看 3秒 刷新一次
pstree: ----> 进程树查看
}
磁盘文件系统{
目前:ext4是linux系统最广泛使用的一种格式
在ext3基础上,对有效性保护,数据完整性,数据访问速度,兼容性等做了改进!
FAT16 FAT32 ntfs 是windows上使用的格式
}
linux文件系统{
1、倒置的树
2、一切皆文件
ls -l:
-rw-rw-r-- 1 farsight farsight 414 9月 12 14:27 1.c
文件类型及权限 硬连接数
- rw- rw- r--
文件类型 当前用户的操作权限 同组用户操作权限 其它组用户
文件类型{
普通文件 -
目录 d
字符设备 c
块设备 b
符号连接 l
管道 p
套接字 s
}
权限{
r 读
w 写
x 执行
}
}
压缩{
归档: tar ---> 加参数也可以压缩 -j bzip2 -z gzip 解压 -x
压缩: tar -cjf 压缩文件名 要压缩的文件列表
tar -czf
解压: tar -vxf 压缩文件名
压缩:
gzip .gz ---->具有很好的移植性,可在很多不同体系架构的系统中使用
gunzip
bzip2 .bz2
bunzip2
zip .zip ----> 使用有不同平台
unzip
}
linux网络{
}
-malign -double