一.文件权限和目录配置
1.使用者与群组
ls -la
权限类型 - 连接数 - 文件拥有者 - 文件所属群组 - 文件大小 - 最新修改时间 - 文件名
权限类型有十位:第一个字符代表文件类型d目录-文件l链接文件b设备文件存储设备c设备文件序列设备; 接下来的九位三个一组均为rwx组合,分别为文件拥有者 群组 其他账户
2.改变文件属性和权限
chgrp 改变文件所属群组【群组名必须在etc/group文件内存中】
chown 改变文件拥有者 【使用者必须在etc/passwd文件记录】-R 递归修改
chown :A 修改群组为A
chmod 改变文件权限
chmod | u g o a | +(加入) -(除去) =(设置) | r w x |文件目录|
cp操作会复制执行者的属性和权限
二.文件与目录管理
1.目录操作
.此层目录
..上层目录
-前一个工作目录
~"当前使用者身份"所在主文件夹
pwd-目前所在目录
mkdir -p 递归创建
cp mv rm
basename 取最后的文件名
dirname 取目录名
2.文件内容查阅
cat - 由第一行开始显示内容
tac - 由最后一行开始显示【cat的倒写】
nl - 显示输出行号
more - 一页一页显示
less - 与more类似,但可以往前翻页
head - 只看头几行
tail - 只看尾几行
3.创建新文件
touch
umask 文件默认权限
umask -S
4.文件类型
file
5.指令与文件搜寻
指令搜寻 - which/type
文件/文件名搜寻 whereis - 搜索特定目录 find - 全盘搜索
三.文件系统
1./dev/sd[a-p][1-128] 实体磁盘文件名
/dev/vd[a-d][1-128] 虚拟磁盘文件名
2.磁盘目录容量
df - 列出文件系统的整体磁盘使用量
du - 评估文件系统的磁盘使用量
3.实体链接和符号链接
Hard Link - ln
Symboic Link - 符号链接 ln -s
4.分区 挂载
单一文件系统不应该被重复挂载在不同的挂载点中
单一目录不应该重复挂载多个文件系统
要作为挂载点的目录理论上应该是空目录
重新挂载 mount -o remount,rw auto /
四.压缩打包
1.压缩指令
.zip - zip程序压缩的文件
.gz - gzip程序压缩的文件
.tar - tar程序打包的数据,未压缩
.tar.gz - tar程序打包的文件,并经过gzip的压缩
2.打包指令 tar
tar -cvf name filename
tar -xcv name
tar -xvf tarID -C dir 解压到指定目录
五.vim
1.hjkl - 方向键 (前加数字直接跳)
gg - 跳首行
G - 跳尾行
/word - 光标之下寻找 ?word - 光标之上寻找
:n1,n2s/word1/word2/g 列之间替换
:1,$s/word1/word2/g 行之间替换
yy 复制 p黏贴
u - 撤销操作
ctrl+r 恢复操作
2.区块选择
v - 字符选择
V - 列选择
ctrl+v - 区块选择
y - 反白复制
d - 反白删除
p - 黏贴
ZZ - 保存退出
3.多文件编辑
vim test1.txt test2.txt
:n - 编辑上一个文件
:N - 编辑下一个文件
:files - 列出目前vim打开的所有文件
4.多窗口
:sp filename
ctrl+w+j[下箭头] - 光标移动下窗口
ctrl+w+k[上箭头] - 光标移动上窗口
ctrl+w+q[:q] - 退出
补充 - i模式 ctrl+x ->ctrl+o
: set nu
: set ic
六.bash
1.shell变量功能
echo name 打印
unset name 取消设置
变量设置单引号双引号:双引号仍然可以保有变量的内容,但单引号仅能是一般字符而不会有特殊字符。
read - 读取键盘输入
alias,unalias - 命名别名设置
history - 历史命令
2.
撷取命令 cut grep
排序命令 sort wc uniq
tee - 双向重导向
字符转化命令 - tr col join paste expand
xargs - 参数替换
七.正则表达式与文件格式化处理
1.基础正则表达式
首字符^ 尾字符$
.[小数点] - 一定有一个任意字符
*[星号] - 重复前一个字符0到无穷次
{}[大括号] - 限制连续字符范围 {}shell中有特殊含义,因此需要转义 {2,5}
2.sed工具[数据数据取代 删除 新增 撷取] ''
-e 命令行界面编辑
-i 直接修改文件内容
$代表最后一行
a新增 c取代 d删除 i插入 p打印 s取代
sed -n '2,5p' 打印2到5行
3.延伸正则表达
grep -E
+重复一个或一个以上
?零个或一个
| 或
()群组字串 'g(la;oo)d'
()+ 多个重复群组判别
4.格式化处理
awk 数据处理工具
diff 文件对比工具
cmp 字节对比
八.程序管理
1.&直接将命令丢到背景中执行 fg &jobnum 将背景工作拿到前台处理
2.kill -9 强制结束
3.uname 查阅系统相关信息
4.netstat
lsof 列出被程序打开的文件名