Linux学习-第二章

磁盘与文件管理

1.磁盘管理

1.1 windows和Linux磁盘管理的区别

windows里面磁盘管理是通过一个磁盘管理器来进行的,分为很多个盘符,比如说C盘,D盘等,一般我们的系统是装在C盘。
而Linux中没有C盘、D盘这些个盘符,在Linux操作系统里边,文档以树的形式组织," / " 是树根," / " 是一个目录名字,是Linux操作系统中所有文件的根。
" / " 下面又有很多其他的子目录,比如说dev、home、lib… 等等。

1.2 pwd

这个命令可以查看当前所在为止,比如:
在这里插入图片描述

1.3 man和–help

1.3.1 man命令

man命令可以查看某个命令的具体用法,例如:man pwd,如果一个命令具体的用法你不知道的话,直接问man(那个男人)就行了。

  • man命令怎么进行翻页:空格
  • man命令怎么退出:q
1.3.2 --help参数

–help也可以查看一个命令的参数,一次性列出,用法:touch --help,就可以直接打印touch的用法。

1.4 ls

1.4.1 ls

ls命令是list的意思:列出,列表等。
通过ls命令可以查看当前目录下的子目录和子文件,例如:
在这里插入图片描述

1.4.2 ls -a

a是all的意思,表示所有
列出包含隐藏文件在内的所有文件。(在Linux操作系统中隐藏文件的文件名通常是以“ . ”开始)
在这里插入图片描述

1.4.3 ls -l

-l 参数表示使用长格式输出:long format
输出结果中每一列的含义如下:
在这里插入图片描述

  • 最前面的字符表示权限,第一个字符如果是d表示是一个目录,如果是-表示是一个文件,如果是l表示是一个软连接。后面的字符是九个字符,三个为一组(分别是读、写和执行),一共为三组,用来表示权限,第一组表示文件拥有者的权限,第二组表示文件所在组权限,第三组表示非同组权限
  • 权限后面的数字表示文件或目录下所有子文件的链接数
  • 第三部分表示文件拥有者。
  • 第四部分表示文件所在组名
  • 第五部分表示文件或子目录大小,单位是字节
  • 第六部分表示最后修改时间
  • 最后一部分是文件或目录名

1.5 cd

cd 命令用于进入指定目录

1.6 clear

clear命令用于清屏

2.文件管理

2.1 新建目录

  • mkdir abc:新建一个名为abc的目录
  • mkdir -p a/b/c (-p是一个参数,表示一次性创建多重目录)
  • mkdir -p a/kk/ff (虽然a已经存在了,但是不会报错,直接在a目录下创建新建目录kk,kk目录下新建ff目录)

2.2 新建文件

  • touch 文件名 ,例如:touch hello.java 表示在当前目录下新建一个文件hello.java
  • touch a.txt b.txt c.txt 一次性在当前目录下,创建多个文件,文件名之间采用空格分隔

2.3 删除文件

用法:rm 文件名

  • rm a.txt(删除当前目录下的a.txt文件),这种方式会询问,是否删除,输入y表示删除,输入n表示不删除
  • rm -f a.txt 强行删除,不询问
  • rm -f b.txt c.txt :删除多个文件
  • rm -f *.txt:删除所有txt结尾的文件

2.4 删除目录

删除目录的时候,必须加上 -r 参数,这个参数表示删除一个目录,或者递归删除目录下的所有子目录以及子文件。

  • rm -r x (删除当前目录下的x目录,以及x目录下的所有子目录),但是这种方式需要用户自己输入y进行确认删除
  • rm -rf x(强行删除x目录以及x目录下的所有子目录,并且不询问,包括子文件也全部删除)

2.5 文件拷贝

cp a.txt aa.txst(复制当前目录下的a.txt文件,粘贴到当前目录下并且生成新文件aa.txt)
语法如下:

  • cp file1 file2
  • file1就是被拷贝的文件
  • file2就是粘贴之后的文件
  • file1和file2可以添加路径
  • cp被拷贝文件的路径 粘贴到哪里的路径

2.6 目录拷贝

cp 目录名1 目录名2

  • 目录名1是拷贝源
  • 目录名2是拷贝到哪里
  • -rf(-r递归拷贝,-f强行拷贝)
  • cp -rf a abc (将当前目录下的a目录拷贝到当前目录下的abc目录当中)

2.7 移动

mv hello.java x(将当前目录下的hello.java文件移动到x目录下)

2.8 文件搜索

在CentOS中,可以使用以下方式进行文件搜索:

  • 1.find命令:使用find命令可以在指定目录下搜索文件,可以使用不同的选项来指定搜索的文件类型、大小、修改时间等条件
  • 2.whereis命令:使用whereis命令可以在系统中搜索指定的命令的为止
  • 3.which命令:使用which命令也可以在系统中搜索指定的命令的为止。

3.软连接与硬链接

3.1 软连接

软链接类似于windows操作系统中的快捷方式
软连接的作用:方便操作。
创建软连接:

ln -s hello.java hello2.java
  • 表示给hello.java创建一个hello2.java的快捷方式(软连接),这个s是soft的意思。
  • hello.java是目标文件,hello2.java是软连接,属于快捷方式
    软链接和目标文件实际上是两个文件,在软连接中存储的是目标文件的路径,软链接关联的目标文件如果被删除,软连接这个快捷方式也就失效了。

3.2 硬链接

怎么创建硬链接? (把软连接创建过程中的 -s 去掉就是创建硬链接的语法)
创建硬链接:

ln hello.java hello2.java

通过操作硬链接,目标文件会改变嘛?操作目标文件,硬链接会改变嘛?
答案是:当然会。
硬链接特点:

  • 主要是用来做重要文件备份
  • 目标文件删除之后,硬链接只要在,文件其实就没有被删除。或者说硬链接删除之后,目标文件还在。总之一句话:目标文件或者硬链接只要有一个存在,文件就没有被真正的删除。
  • 硬链接机制和复制粘贴不一样,复制粘贴之后的文件,修改其中之一,另一个不会改变,但是硬链接就不一样。

4.文件压缩与解压缩

tar是Linux系统中完成压缩和解压缩的命令,压缩后的文件被称为归档文件

4.1 tar命令详解

tar命令语法格式:tar 参数 要压缩的或解压缩的文件或者目录
tar命令常用的参数:

  • z:指定是否使用gzip压缩方式压缩。(扩展名通常为:tar.gz。特点:速度最快))
  • j:是否需要用bzip2压缩方式压缩。(扩展名通常为:tar.gz2。特点:体积最小)
  • c:创建压缩(create)(负责压缩的)
  • x:解压缩 (复杂解压缩的)
  • v:是否在压缩的过程中显示文件(view)
  • f:指定归档文件名(file)。f参数后面必须紧跟文件名,不能在f参数后面再加其他参数。
  • t:查看tarfile里面的文件(既不负责压缩,也不负责解压缩)
  • C:指定解压的具体目录,注意这个C是大写。
    注意:c、x、t,这三个参数不能共存,只能出现一个!

4.2 压缩

我们先创建两个文件:test1.java和test2.java

  • touch test1.java
  • touch test2.java
    在这里插入图片描述

压缩一个文件

  • tar -zcf test1.tar.gz test1.java (没加v参数的话,压缩之后就没有返回值,不会返回被压缩的文件名称)
    在这里插入图片描述

  • tar -zcvf test2.tar.gz test1.java (加了v参数,压缩之后就会返回压缩的文件名称)
    压缩多个文件
    在这里插入图片描述

  • tar -zcvf test3.tar.gz test1.java test2.java
    在这里插入图片描述

  • tar -zcvf test4.tar.gz *.java (把所有java文件都压缩)
    在这里插入图片描述

压缩目录
我们先创建一个test-dir目录,然后在目录里创建两个文件:test3.java和test4.java

  • tar -zcvf test-dir.tar.gz test-dir (把test-dir目录压缩为test-dir.tar.gz)
    在这里插入图片描述

4.3 查看归档文件

  • tar -tf test-dir.tar.gz
    在这里插入图片描述

4.4 解压

解压缩只需要把压缩时候的参数中的c改为x就行了。

  • tar -zxvf test-dir.tar.gz(解压文件到当前目录下,解压之后会获取一个test-dir目录)
    在这里插入图片描述
  • tar -zxvf test-dir.tar.gz -C test (将mytxt.tar.gz压缩包解压到test目录)
    在这里插入图片描述

5.文件编辑vi与vim

5.1 vi与vim概述

vivim都是在Linux和Unix中常用的基于字符终端的文本编辑器。

  • vi是Unix早期提供的标准命令行下的文本编辑器,是一款非常强大的、高效的编辑器,可以对文本进行快速修改和编辑,具有常见编辑器的基本功能。
  • vim是在vi基础上进行了改进和扩展的一个版本,它保留了vi的全部功能,并添加了许多新功能,如基本的GUI界面、语法高亮、多级撤销/重做、对齐、插件支持等。可以说vim是强大的文本编辑器之一,被众多的开发者、管理员、协作人员和爱好者使用。
    通过vi和vim命令,我们可以在终端中打开并编辑文本文件,进行各种修改和编辑,保存后退出,是Linux和Unix系统中非常基础、常用的一种文本编辑方式。

在CentOS中,系统默认是安装vim编辑器的,但是为了兼容vi编辑器的使用习惯,CentOS将vim的执行文件命名为vi。因此,实际上在CentOS中使用vi和vim是等价的,都是使用vim编辑器进行文本编辑。

5.2 vi编辑器的使用

第一步:使用vi编辑器打开文件,语法:vi文件的路径

  • vi test1.java (打开当前路径下的test1.java)
  • vi /home/test/test1.java (打开/home/test目录下的test1.java文件。)

第二步:编辑文件(vi编辑器为用户准备了两个模式)

  • 第一个模式:命令行模式。(此时键入的都是命令)
  • 第二个模式:编辑模式。(此时键入的内容都会写入文件)
  • 进入vi编辑器时是命令模式:键入i命令进入编辑模式
  • 从编辑模式回到命令模式:按一下esc键。

第三步:保存,在命令模式下,输入以下命令:

  • :wq 这是一个命令,这个命令可以保存并退出
  • :q! 这是一个命令,这个命令可以强行退出vi编辑器,并且不保存。

注意:vi编辑器打开的文件如果不存在,则自动创建

5.3 vi编辑器常用命令

  • dd:删除光标所在行
  • yy:复制光标所在行到缓冲区
  • p:粘贴缓冲区中的内容
  • gg:光标回到文件的第一行
  • GG:光标回到文件最后一行
  • ^:光标移动到当前行的行首
  • $:光标移动至当前行的行尾
  • /关键字:按斜杠 / 键,可以输入像搜索的字符,然后确定进行搜索,如果第一次查找的关键字不是想要的,可以一直按n键往后查找到想要的关键字为止。
  • o命令:在下一行插入。
  • x命令:命令行模式下,x命令会删除单个字符

6.nano编辑器

nano编辑器相对于vi编辑器来说出现的比较晚,以下是nano常用的快捷键,这些快捷键多数是无法在windows环境下使用的,也就是说在xshell中无法使用,因为和windows很多快捷键是冲突的,在Linux环境中可以用:

  • 1.打开文件:nano test.java
  • 2.保存文件:ctrl + o
  • 3.退出nano:ctrl + x
  • 4.选中多个字符:shift + 左方向/右方向
  • 5.剪切:ctrl + k
  • 6.粘贴:ctrl + u
  • 7.搜索:ctrl + w
  • 8.替换:ctrl + \
  • 9.复制选中的:alt + 6
  • 10.撤销:alt + u
  • 11.重做:alt + e
  • 14
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值