1.Linux系统文件
-
Linux文件系统概念
Linux文件系统中的文件是数据的集合,文件系统不仅包含着文件中的数据而且 还有文件系统的结构,所有Linux 用户和程序看到的文件、目录、软连接及文件保护信息等都存储在其中。 -
类Unix系统上,是一个“倒挂树”的结构
如图:
-
linux系统文件目录
/bin , /sbin | 系统文件命令的二进制文件 |
---|---|
/boot | 存放系统启动有关的文件 |
/dev | 设备文件 |
/home | 用户的家目录 |
/lib | 库,模块文件 |
/usr | 用户 |
/opt | 与第三方安装模块 |
/var | 与应用相关是的文件 |
/etc | 配置文件 |
2.Linux文件目录常用管理命令
- mkdir
-创建目录或文件夹
mkdir +文件夹名 :创建一个文件夹
mkdir -p data1/date2/date3 创建多层目录
- touch
-创建文件
touch filename
touch >filename
- cat , head ,tail 查看文件
cat + 文件名 | 查看文件 |
---|---|
cat file1 file2 | 把两个文件内容拼接到一起 |
cat -n 文件名 | 打印文件标出行号 |
cat -s 文件名 | 去多行空行 |
cat -E 文件名 | 每一行末尾加入$符号 |
vi +行号 文件名 | 光标直接跳到对应的行 |
head -n 文件名 | 查看文件前n行,默认10行 |
tail -n 文件名 | 查看文件结尾,默认10行 |
echo+"内容" >file 把内容写入file中
- more
-分屏显示
more -10 demsg.old 一屏10行
ctrl+l 向下分屏滚动
ctrl+f 向上分屏滚动
diff file1 test2 文件对比
- grep
-过滤文本
文件名为:passwd
grep ^root passwd | 以root开头的行 |
---|---|
grep -i root passwd | 含root不分大小写的行 |
grep -n root passwd | 含root的行加行号 |
grep -c root passwd | 统计以root开头的行数 |
grep -v root passwd | 打印出不以root开头的行 |
- rm
-删除文件/目录
rm -r + 目录名 | 递归删除 |
---|---|
rm -f | 强制删除 |
rm -d | 删除空目录 |
rm +文件名 | 删除文件 |
rm -rf | 强制递归删除 |
file1,file2,file3,和一个程序 都基于inode节点上时,i_count=4,磁盘内存用了10G还有10G
当这三个文件都被移除i_count=1,磁盘内存用了10G还有10G
当程序也被清除时,i_count=0,磁盘的内存才被释放,剩余20G
- mv
-移动文件位置
mv :移动的时候,不定新名字,名字不变;指定了,就重命名
mv 现在名字 新名字
mv file data 移动到data中(存在data)
- cp
-复制/粘贴
cp 文件名 要复制的路径
cp -p 带权限复制
cp -a 复制所有
- file
-查看文件类型
file 文件名
ln file1 file2 | 给file1做了一个硬链接file2 | 硬链接在原文件删除后内容依然存在 |
---|---|---|
ln -s file1 file3 | 给file1做了一个软链接file2 | 软连接在原文件删出的情况下失效 |
如图,file1创建在操作系统的inode节点中,file2是根据file1创建的硬链接它指向inode其他节点;file3是根据file1创建的软连接,它是根据file1寻找内容,相当于一个快捷方式。
假如,删除file1,file2还是有原来file1中的内容,而file3则链接不到内容,文件也找不到。再重新创建file1文件,file3则链接到新的file1。
- find,locate
-查找路径(默认当前)
find -name 按照名字查找
locat -name 按照名字查找
find -user username 查找用户
find -type f/s 按文件类型查找
exec:对匹配的文件执行该参数所给的shell命令 形式为command{} \;
!注意{}与\;之间有空格
find -name test99 -exec rm -rf {} \;查找并删除
find -name "test*" -exec rm -rf {} \;
- cut
-文件操作:
cut -b 文件名 按照字节个数截取文件
cut -b 10-20 文件名 截取文件每一行的第10-20个字节
cut -b 10- 文件名 截取文件每一行的前10个的字节
cut -b -20 文件名 截取文件每一行的后20个字节
- sort 排序
-默认是正序排列
sort -r 文件名 降叙排列
cat 文件名 |sour |uniq 去掉文件sort中重复的 先排序再去重
cat sort |wc -l 统计行数
- 查看位置
which +命令 查看命令所在路径 可以判断命令程序是否安装
whereis 文件名 查看文件位置
- echo e为转义参数,不受强引和弱引约束
’ ’ :可见及可得 ,强引用
" " :弱引用 把变量或者是转义符正常使用
2.系统管理 - uptime
root@localhost ~]# uptime
10:35:38 up 1:58 2 users, load average: 0.00, 0.01, 0.04
系统时间 状态 运行了多久 ,用户, 平均负载, 五分钟,十分钟,十五分钟
- top
-实时显示系统负载,以及每一个进程的资源占用情况
- ps
-查看进程
ps -ef 查看进程
ps -aux |grep ssh
a 当前终端的进程
-u 用户的进程
-ax 显示详细信息
- passwd
-修改当前用户密码
passwd 用户名 | 修改用户密码 |
---|---|
su 用户名 | 用户目录没有变化 |
su - 用户名 | 到用户的家目录 |
exit | 退出当前用户 |
whoami/who -m | 查看当前用户 |
3.xargs命令
第一个.将echo的.内容当作cat处理的文件内容了,实际上就是echo命令的输出通过管道定向到cat的输入 结果为 --help
第二个.xargs将其接受的字符串 --help 做成cat的一个命令参数来运行cat命令