Linux系统结构和文件管理

#####linux系统结构########
在Linux下所有东西都是以文件的形式存在,所有的文件夹都是目录,文件都存放在目录下,所有的目录都存放在顶级目录根目录下,根目录下是二级目录
注:
linux是一个倒树型结构,最大的目录名称叫“/” (根目录)根不能删除,必须存在
下图是根目录下的系统结构
在这里插入图片描述
#####linux系统中的二级目录(根下的目录)######

/bin##二进制可执行文件,是系统内常规命令
/boot##启动目录负责系统启动(包含系统启动时读取的文件,存放系统自动启动文件,内核,初始化程序)
/dev##系统设备管理文件(包含鼠标 U盘等硬件)
/etc##大多数系统配置文件存放路径(包含系统如何运行的文件)
/home##普通用户家目录(默认所在位置)
/lib##32位系统库文件存放位置(函数库用来查询命令的含义以及模块要执行哪个部分)
/lib64##64位函数库文件存放位置
/media##系统临时设备挂载点
/mnt##系统临时设备挂载点
/run##自动临时设备挂载点
/opt##第三方软件安装路径(系统官方未开发的软件)
/proc##系统硬件信息和系统进程信息
/root##超级用户家目录
/sbin##系统管理命令,通常只有root可以执行
/srv##系统数据目录
/var##系统数据目录
/sys##系统管理,内核相关数据(模块信息)
/tmp##系统临时文件存放位置
/usr##系统用户相关信息数据及用户自定义软件的存放位置

注:
/home ##普通用户家目录(默认所在位置)
/root ##超级用户家目录
######文件管理########
1.绝对路径和相对路径
绝对路径:是一个完整的路径,文件在系统中的真实位置,文件名字以“/"开头,;
相对路径:以一个目录为起点到文件所在的目录,不以“/“开头(即自己相对于目标的位置);

[kiosk@foundation46 Desktop]$ pwd  ##查看当前位置
/home/kiosk/Desktop
[kiosk@foundation46 Desktop]$ cd /etc/passwd ##离开桌面去passwd目录,不在同一位置需要说出passwd的具体准确位置即相对路径/etc/passwd
[kiosk@foundation46 Desktop]$ cd shell  ## 切换到shell目录
[kiosk@foundation46 shell]$ pwd
/home/kiosk/Desktop/shell  ##shell目录就在/home/kiosk/Desktop下,与当前用户所在同一目录只需相对路径就可以

###文件管理命令##
1.文件的建立
格式:touch + (文件名)
注:
touch 可以同时创建一个或多个文件,但创建文件时必须要有正确的路径

[root@nfs-server ~] touch file  #建立一个名为file的文件
[root@nfs-server ~]# touch file1 file2 file3  #同时建立3个名为file1 file2 file3  的文件
[root@nfs-server ~]# touch /home/file4  ##建立file4文件,存放路径在/home下
[root@nfs-server ~]# touch /hello/file5   ####建立file5文件,存放路径在/hello下
touch: cannot touch ‘/hello/file4’: No such file or directory  #报错:不存在/hello目录或文件

在这里插入图片描述
注意:
touch不但可以建立文件也可以修改文件的时间戳
时间戳分为:
atime:文件内容被访问的时间标识
mtime:文件内容被修改的时间标识
ctime:文件属性或文件内容被修改的时间标识

[root@server Desktop]# ls file1 -ld   ##查看file1
-rw-r--r-- 1 root root 0 May 23 06:26 file1
[root@server Desktop]# touch file1  ##touch file1
[root@server Desktop]# ls file1 -ld     ##查看file1  时间从 06:26变为06:27
-rw-r--r-- 1 root root 0 May 23 06:27 file1

####2.目录建立####
mkdir directory
mkdir -p dir1/dir2/dir3(一个目录) -p建立递归目录时,当上层目录不存在自动建立 在这里插入图片描述
mkdir dir1/ dir2/ dir3/(三个目录)

####3.文件删除####
rm file
rm: remove regular empty file"file"? y===>询问是否确定删除文件
rm -f file -f=force 标示强制删除不提示

####4.目录删除####
rm -r directory -r标示递归删除,也就是删除目录本身和里面的所有内容
rm -r -f dir 删除目录不提示
rm -rf dir 在命令参数使用过程中,(r,f)顺序是不需要注意的。
rm -fr dir
rm -fr dir1/ dir2/dir3 删除多个目录不提示在这里插入图片描述

####5.编辑文件####
1.gedit
gedit file ##必须有图形

2.vim
vim file -->按[i]进入insert模式–>书写内容–>按[esc]退出insert模式–>:wq退出保存
[kiosk@foundation46 ~]$ vim file
####vim异常退出######
当vim异常退出时会生成.file.swp文件

当再次打开此文件时会出现以下情况:
在这里插入图片描述[O]pen Read-Only只读打开 , (E)dit anyway 继续编辑 , ®ecover,恢复数据 (D)elete it, 删除swap文件 (Q)uit, 退出 (A)bort: 退出

无论按[O] (E) ® (Q) (A) 任何一个都不会删除.file.swp文件
那么再次打开file文件时还会出现以上界面直到按(D),.swp文件被删除
vim恢复正常工作

####6.文件的复制####
cp 源文件(big1) 目的地文件(big2)
cp -r 源文目录(big1) 目的地目录(sweet1)
cp 源文件(big1) 源文件(big2) 目的地目录(sweet2) ##目的地目录必须存在
cp -r 源目录(sweet1) 源目录(sweet2) 目的地目录(sweet3) ##目的地目录必须存在
在这里插入图片描述
####7.文件移动####
mv 源文件(big1) 目的地文件(big2) ##文件的移动是重命名
mv 源目录(sweet1) 目的地目录(sweet2)
在这里插入图片描述
注意:
相同磁盘的文件移动只是一个重明名过程
不同磁盘的文件移动是复制删除过程(不同磁盘文件的移动耗费时间长于相同磁盘文件的移动)

####8.文件查看####
cat file(文件名) ##查看文件的全部内容
cat -n file ##-n显示行号包含空行在这里插入图片描述
cat -b file ##-b显示行号不包含空行
在这里插入图片描述
less file ##分页浏览
用法:
上|下 ##逐行移动
pageup|pagedown ##逐页移动
/关键字 ##高亮显示关键字,n向下匹配,N向上匹配
v ##进入vim模式 在vim模式中按:wq 退回到less模式
q ##退出

head file ##查看文件前10行
head -n 3 file ##查看文件前3行

tail file ##查看文件后10行
tail -n 3 file ##查看文件后3行 (-n 数字,就是该数字的第几行)
在这里插入图片描述
#####9.文件的寻址####
1.文件的地址分为:
相对路径:
相对与当前系统所在目录的一个文件名称的简写,
此名称省略了系统当前所在目录的名称
此名称不以“/”开头
此名称在命令执行时会自动在操作对象前加入“PWD”所显示的值

绝对路径:
	绝对路径是文件在系统的真实位置
	此命令是以“/”开头的
	此命令在命执行时系统不会考虑现在所在位置的信息

注意:
当操作对象是 对象1 空格 对象2 时,这两个对象之间没有任何关系
A B ##这是2个对象(空格键的存在)
AB ##这是一个对象

亲		##动作是被系统执行的,不能作为名称出现
“亲”		##用引号的作用是把动作变成名称字符,这种方法叫引用

####10.自动补齐####

系统中的<Tab键可以实现命令的自动补齐,可以补齐系统中存在的命令,文件名称,和部分命令的参数
当一次补齐不了时代表以此关键字开头的内容不唯一,可以用X2来列出所有以此关键字开头的内容

#####11.关于路径的命令####
1.显示路径
pwd
[kiosk@foundation46 ~]$ pwd ##查看当前路径
/home/kiosk (当前位置在/home/kiosk)

2.切换路径
cd 目录名称 ##进入到指定目录中
cd - ##当前目录和当前目录值前所在目录之间的切换
cd ~ ##进入当前用户家目录
cd ~user ##进入user家目录
cd … ##进入当前目录的上级目录在这里插入图片描述

3.查看
ls
ls -l file ##文件属性
ls dir ##目录中保函的内容
ls -d dir ##目录本身
ls -a dir ##所有文件包含隐藏的
ls -S dir ##查看并且按照大小排序
ls -s file|dir##查看文件大小
4.文件查看
cat ##输出文件全部内容
less ##分页浏览
head file ##查看文件前10行
head -n 5 file ##查看文件前5行
tail file ##查看文件后10行
tail -n 3 file ##查看文件后3行
tail -f file ##监控文件后10行内容的变化

5.文件大小统计
wc
wc -l ##行数
wc -w ##单词数
wc -m ##字符数
wc -c ##字节数

####12.系统中历史的调用####

history ##查看历史
history -c ##清空当前环境中的历史
!数字 ##调用此行历史比如"!5"时执行历史中地5条命令
!test ##执行以test关键字开头的最近一条历史
ctrl +r +关键字 ##调用历史中最近一条含有此关键字的历史
示例:
[kiosk@foundation46 ~]$ !6调用此行历史比如"!6"时执行历史中地5条命令
[kiosk@foundation46 ~]$ !touch执行以touch关键字开头的最近一条历史
(``reverse-i-search)': vim ```会调用最近一条命令中含有vim字符的历史

####13.在系统中获得帮助####
1.查看命令大用途
whatis 命令 ##查看命令的用途

2.查看命令的用法
命令 --help ##查看命令的基本用法,适用于多数命令
[] ##标示选项可以加也可以不加
… ##标示选项加入的个数任意
<> ##标示选项是必须要加入的
Userage: ##标示命令用法
Opetions: ##对参数的作用做说明
kiosk@foundation46 ~]$ cat --help (查看命令cat的用法)
在这里插入图片描述
3.man查看命令或文件的说明手册
man 命令[kiosk@foundation46 ~]$ man wc(命令wc的使用说明)
在这里插入图片描述

man 5 文件
man的级别
1 #命令
2 #系统调用接口
3 #函数库调用接口
4 #特殊设备文件
5 #系统配置文件
6 #游戏规则说明
7 #包说明
8 #系统管理命令
9 #内核调用规则

man的基本用法
上|下 ##逐行查看
pgup|pgdn ##分页查看
/关键字 ##高亮显示关键字,n向下匹配,N上向匹配
:q ##退出

man -k 字符串 ##下看当前字符串在系统中拥有的man的级别

/usr/share/doc ##系统中所有安装过的软件的帮助文档

####14.系统中的通用配置符号#####

  • ##匹配0到任意字符
    ? ##匹配单个字符
    [[:alpha:]] ##单个字母
    [[:lower:]] ##单个小写字母
    [[:upper:]] ##单个大写字母
    [[:digit:]] ##单个数字
    [[:punct:]] ##单个符号
    [[:space:]] ##单个空格
    [[:alnum:]] ##单个数字或字母
    [[:punct:][:upper:]] ##但个符号或但个大写字母 注意:两个数字或字母的正确表达[[:digit:]][[:digit:]]; [[:digit:][:dight:]]表示数字或数字;少了[]的为错误命令输入
    例如:
    [kiosk@foundation46 ~]$ rm -f fi[[:punct:]]le删除fi[单个符号]le的文件
    [kiosk@foundation46 ~]$ rm -f fi[[:lower:]]le删除fi[单个小字母]le的文件
    [kiosk@foundation46 ~]$ rm -f fi[[:upper:]]le删除fi[单个大字母]le的文件
    [kiosk@foundation46 ~]$ rm -f fi[[:digit:]][[:digit:]]le删除fi[2个数字]le的文件
    [kiosk@foundation46 ~]$ rm -f ?????删除5个字符的所有文件
    [kiosk@foundation46 ~]$ rm -f file*删除file的所有文件(* 表示所有)

[1-9] #1位,这位是1-9的任意数字 []包含目标不明确,只能单指一个内容
[!3-5] #1位,不是3-5的数字
[^3-5] #1位,不是3-5的数字
[a-z] #1位,a-z的任意字母
{1…3} #3个,1 2 3 touch file{1…3} 会建立file1 file2 file3三个文件
{1,4,7} #3个1,4,7这三个数 mkdir big{1,4,7} 会建立big1 big4 big7三个文件

~ #当前用户家目录
~username #指定用户的家目录
~+ #当前目录和点一样,但+用法范围更广
~- #进入当前目录之前所在目录(olddir)cd_中的"-"可用-其余的只能用~-

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值