Linux目录和文件管理

Linux 目录结构

是树形结构,默认是以 根目录 / 为所有文件、目录的起点
 

目录介绍
/root  超级用户(系统管理员)的主目录(特权阶级)
/home存放所有用户文件的根目录,是用户主目录的基点,比如用户user的主目录就是/home/user,可以用~user表示;
/bin存放所有用户文件的根目录,是用户主目录的基点,比如用户user的主目录就是/home/user,可以用~user表示;
/sbin存放二进制可执行文件,只有root才能访问。这里存放的是系统管理员使用的系统级别的管理命令和程序。如ifconfig等;
 /boot存放用于系统引导时使用的各种文件:
/dev用于存放设备文件;
/etc存放系统管理和配置文件;
/var用于存放运行时需要改变数据的文件,也是某些大文件的溢出区,比方说各种服务的日志文件(系统启动日志等。)等:
/usr用于存放系统应用程序:
/opt额外安装的可选应用程序包所放置的位置。一般情况下,我们可以把tomcat等都安装到这里:
/proc虚拟文件系统目录,是系统内存的映射。可直接访问这个目录来获取系统信息;


查看文件内容cat    -n  -b  -cat

cat  [选项]  文件名   //直接显示出整个文件的内容——适用于小文件

选项效果
-n显示行号包括空行
-b跳过空白行编号
-s讲所有的连续的多个空行替换为一个空行(压缩成一个空行)
-A显示隐藏字符

文件内容进行合并
例如a、b文件内容合并成c文件
cat [a][b]>[c]

        

查看文件内容more

通式:more [选项] 文件名   //全屏方式分页显示文件内容

Enter键向下逐行滚动
空格键向下翻一页
b键向上翻一页
q键退出

 注:下翻到最后一页后会自动退出   

查看文件内容 less

less [选项] 文件名..

注:

        /关键字 进行搜索,大小写敏感

        命令 | less 进行分页查看

Page Up键向上翻页
Page Down键向下翻页
/键查找XX内容(/XX:查找XX内容
n下一个内容
N上一个内容
上下键上下逐行滚动
q键或 Ctrl+C组合键退出

注:其他功能与more命令基本类似;下翻到最后一页后不会自动退出;结合管道操作使用时可以向上翻页。

查找文件内容-head、tail

 head

可以显示文件或标准输入的前面行

通式:head [选项] 文件名    

head命令:查看文件开头的一部分内容(默认为10行)
head -n 文件名...   #n为行数

head -n 具体数字 文件名 (不加具体的数字,默认开头十行)

         #号代表数字

tail

tail 和 head 相反,查看文件或标准输入的倒数行

通式:tail [选项] 文件名 

tail命令:查看结尾的少部分内容(默认为10行)
tail -n 文件名...
tail -f 文件名...   #跟踪文件尾部内容的动态更新

补充:

        tail -n 数字

        tail -f 文件名

        tailf 文件名

        tailf = tail -f

head -n 51-5行
head -n +51-5行
head -n -21-8行
tail -38-9行
tail -n 38-9行
tail -n -38-9行
tail -n +33-10行

head -10 文件名 | tail -6 #第5行到第10行 

统计文件内容 wc

 通式:wc 【选项】 目标文件   //统计文件中的单词数量

选项:

-l统计行数
-w统计单词个数                       //英文1字节,汉字两字节
-c统计字节数+1换行符           //取消换行符:echo -n [统计内容])> [文件名]

注:不带任何选项的wc命令,默认同时使用-lwc三个选项

 检索和过滤文件内容  grep

grep [选项]...查找条件 目的文件         // 在文件中查找并显示包含指定字符串的行                                                        

选项 :

选项效果
-i不区分大小写查找
-v显示不包含匹配文本的所有行(反向查询,反向匹配)
-n显示匹配行及行号
-c只输出匹配到的总行数(不是匹配到的次数
-e实现可多个查找条件的匹配,逻辑or关系
-E支持使用扩展正则表达式,相当于使用egrep命令
-o精确匹配,即“仅匹配”之意
-A n显示匹配行和它后面的n行
-B n显示匹配行和它前面的n行
-C n匹配行和它前后各n行
-l列出文件内容符合指定的样式的文件名称(列出包含字符串文件)
-w只显示全字符合的列(完整单词)

 基本格式:

        ● 要查找的字符串以双引号括起来单引号也可以

        ● “^……”表示以……开头,“……$”表示以……结尾

        ● “^$”表示空行

例如:grep [查找对象] [文件名]   //把含有[查找对象]内容筛选出来
grep -l -R [查找对象] ./                   //众多文件查找包含[查找对象]的文件

案例:超出两个文件中相同的部分

          grep -f a文件 b文件

         分析:将a文件作为条件去匹配b文件,得出a文件和b文件相同的部分

以root开头

        grep “^root” passwd

空行

        grep “^$” passwd

非空行

        grep -v “^$” passwd

正则表达式 

                ● ^ 一行的开头

                ● $ 一行的结尾

                ● . 任意字符

拓展:

        正则表达式:匹配文件中的字符串(grep awk sed)

        通配符:匹配文件的名字(ls find)

压缩及解压缩文件

压缩命令-gzip、bzip2

制作压缩文件、解开压缩文件

gzip [-9] 文件名...           //压缩 gzip -d .gz #解压缩(.gz格式的压缩文件)

gunzip .gz #解压缩(.gz格式的压缩文件)

bzip2 [-9] 文件名...           //压缩 bzip2 -d .bz2 //解压缩(.bz2格式的压缩文件)

bunzip2 .bz2 //解压缩(.bz2格式的压缩文件)

压缩比可以是 -1(压缩速度最快,性能消耗最小,压缩比最低) 到

                       -9(压缩速度最慢,性能消耗最大,压缩比最高)

归档命令 tar

tar [选项]...归档文件名 源文件或目录   制作归档文件
tar [选项]...归档文件名 [-c 目标目录]     释放归档文件

选项
-c创建.tar 格式的包文件
-x解开.tar 格式的包文件
-C解压时指定释放的目标文件夹
-f表示使用归档文件
-P打包时保留文件及目录的权限 大P
-p打包时保留文件及目录的绝对路径 小p
-t列表查看包内的文件
-v输出详细信息(Verbose)
-j调用 bzip2 程序进行压缩或解压 [注:J(xz)]
-z调用 gzip 程序进行压缩或解压

通过tar命令制作压缩包,采用gzip程序进行压缩,显示详细信息

split

作用:分割文件

通式:split [-b ] [-C ] [-] [-l ] [要切割的文件] [输出文件名前缀] [-a ]

选项效果
-b <字节>指定按多少字节进行拆分,也可以指定 K、M、G、T 等单位。
- <行数> 或 -l <行数>指定每多少行要拆分成一个文件。
-a <后缀长度>默认的后缀长度是 2

压缩,解压缩

压缩:
gzip [-9] 文件....        

 #压缩比可以是 -1(压缩速度最快,性能消耗最小,压缩比最低) 到 -9(压缩速度最慢,性能消耗最大,压缩比最高) 
bzip2 [-9] 文件....
zip XXX.zip  被压缩的文件/目录....
tar -zcvf  XXX.tar.gz  被压缩的文件/目录....        #z(gzip) j(bzip2) J(xz)
 

解压缩:
gzip -d  XXX.gz        gunzip XXX.gz 
bzip2 -d XXX.bz2       bunzip2 XXX.bz2
unzip XXX.zip [-d 目录]
tar xf XXX.tar.gz [-C 目录]      #-C指定目录解压缩

tar tf XXX.tar.gz      #查看压缩包文件内容

tar-归档命令

tar [选项] ... 归档文件名 源文件或目录      //制作归档文件

tar [选项]...归档文件名 [-c 目标目录]        //释放归档文件

选项效果
-c创建.tar 格式的包文件
-x解开.tar 格式的包文件
-C解压时指定释放的目标文件夹
-f表示使用归档文件
-P打包时保留文件及目录的权限 大P
-p打包时保留文件及目录的绝对路径 小p
-t列表查看包内的文件
-v输出详细信息(Verbose)
-j调用 bzip2 程序进行压缩或解压 [注:J(xz)]
-z调用 gzip 程序进行压缩或解压

vim编译器 

vi/vim 文件名 !vim
                                    命令模式          
           <-- i a o I A O  --                --   :   -->
输入模式  --  ESC        -->        <--  ESC  --   末行模式

文本编辑器的作用

  • 创建或修改文本文件;
  • 维护Linux系统中的各种配置文件。

Linux中最常用的文本编辑器

  • vi:类UNIX操作系统的默认文本编辑器
  • vim:vim是vi文本编辑器(一般简称vi编辑器)的增强版本式
  •  三种模式
            Vim 编译器有三种模式,分别是命令模式、插入模式末行模式

            命令模式:正常模式是 Vim 编译器的默认模式,也是最常用的模式。在正常模式下,用户可以使用各种命令进行文本编辑、移动光标和执行操作等。

            插入模式:插入模式用于输入文本。可以通过按下 i 键进入插入模式,此时光标会变成竖线状,可以直接输入文本内容。按下 Esc 键可以从插入模式返回到命令模式

            末行模式:命令行模式用于执行 Vim 编辑器的各种命令。可以通过按下 : 键进入末行模式,在此模式下可以输入各种 Vim 命令,例如保存文件、退出编辑器等。

 命令模式:才进去的那个模式

行间跳转:

        数字G        跳到数字行

        gg              首行

        G               末行

行内跳转:

 

  • G        切换到最后一行
  • 1G gg    切换到第一行
  • #G       切换到第 # 行

撤销修改:

        u        撤销一次操作

       U          撤销光标处所在行的所有操作

        ctrl + r键   恢复上一步撤销的操作

复制 y:

  • yy      复制光标处所在的行
  • #yy     复制光标处开始的 # 行
  • #yy + p/P   复制 + 粘贴

粘贴命令:

        p        贴在光标下面

        P        贴在光标上面

删除命令:

  • dd       删除光标处所在的行
  • #dd      删除光标处开始的 # 行
  • #dd + p/P  剪切 + 粘贴,p在光标行下面粘贴,P在光标行上面粘贴
  • x del键      删除光标处所在的字符

 /字符串  ?字符串    查找字符串,

n(/字符串 是从上往下找,?字符串 反之),

N(/字符串是从下往上找,?字符串 反之)            

输入模式

按 i 或 o 进入:

        i         当前光标处插入

        o        下一行插入

末行模式 

命令模式下输入“ : ”(英文冒号)

:wq  :wq!  :x  ZZ  保存并退出
:q!                不保存退出

:set nu      显示行号
:set nonu    不显示行号

:s/OLD/NEW/g         将光标处所在行的所有OLD字符串替换成NEW字符串
:% s/OLD/NEW/g       将所有行的所有OLD字符串替换成NEW字符串
:N,M s/OLD/NEW/g     将第 N 行到第 M 行的所有OLD字符串替换成NEW字符串

:r 文件路径    在光标处所在行下面插入指定的文件内容

:N,M co #     将第 N 行到第 M 行的内容复制到第 # 行下面
:N,M m #      将第 N 行到第 M 行的内容剪切到第 # 行下面

  • 28
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值