完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
2个回答
|
|
Linux 文件系统类型
我们在使用 Windows 系统的时候,有时会对硬盘,U 盘等的存储设备进行格式化,在格式化的时候会要求 我们选择文件系统的类型,比如:exFAT、FAT32、NTFS,同样 Linux 系统也支持各种不同类型的文件系统, 比如:ext2、ext3、ext4、yaffs、FAT32、NTFS 等。这里我们主要讲解下几种常用的文件系统。 FAT32 文件系统: FAT32 指的是文件分配表是采用 32 位二进制数记录管理的磁盘文件管理方式,因 FAT 类文件系统的核心是 文件分配表,命名由此得来。FAT32 是从 FAT 和 FAT16 发展而来的,优点是稳定性和兼容性好,能充分兼容 Win 9X 及以前版本,且维护方便。缺点是安全性差,且最大只能支持 32GB 分区,单个文件也只能支持最大 4GB。 3 ext3 文件系统 EXT3 是第三代扩展文件系统(英语:Third extended filesystem,缩写为 ext3),是一个日志文件系统, 常用于 Linux 操作系统。它是很多 Linux 发行版的默认文件系统。Stephen Tweedie 在 1999 年 2 月的内核 邮件列表中,最早显示了他使用扩展的 ext2,该文件系统从 2.4.15 版本的内核开始,合并到内核主线中。 ext4 文件系统 4 EXT4 是第四代扩展文件系统(英语:Fourth extended filesystem,缩写为 ext4)是 Linux 系统下的日志 文件系统,是 ext3 文件系统的后继版本。Ext4 是由 Ext3 的维护者 Theodore Tso 领导的开发团队实现的, 并引入到 Linux2.6.19 内核中。Ext4 产生原因是开发人员在 Ext3 中加入了新的高级功能。 上面几种文件系统是我们在 Linux 下经常使用的,那么我们安装的 Ubuntu 系统下的文件系统使用的是哪种 格式的呢?我们可以在终端输入“df -T”命令来查看下,如下图所示: 从上图红色方框的文件就是我们安装 Ubuntu 的磁盘,在 Linux 下一切皆为文件,“/dev/sda1”就是我 们的磁盘分区,可以看到他的类型是 ext4。我们在 Windows 系统下有 C、D、E 盘这样的概念,但是通过上 面的命令我们可以看到 Linux 下对磁盘的管理与 Windows 是不一样的,没有 C、D、E 盘这样的概念。Linux 系统只有一个跟目录“/”,我们可以在 Ubuntu 的桌面打开“文件”应用,我们可以看到打开的文件路径 并不是在根目录下,这是因为 Ubuntu 是支持多用户的,会为每个用户分配一个根目录,比如我的 Ubuntu 登录的用户是 topeet,那么默认进入的就是 topeet 用户的根目录“home”,如下图所示: 我们在上图中点击左侧的“计算机”,如下图所示: 上图就是 UBuntu 的根目录,那么前面我们的说的 Ubuntu 会为每一个用户创建一个根目录,那么这个根目 录具体位置在哪里呢?我们在创建用户的时候,Ubuntu 同时会在“/home”目录下创建与应户名同名的文 件夹,这个文件夹就是用户的根目录,比如我这里登陆的用户名是 topeet,那么 topeet 用户对应的用户根 目录就是“/home/topeet”这个目录。用户可以对自己用户根目录下的文件进行任意的读写操作。我们可 以打开终端使用“cd /”命令,进入到系统根目录下,然后在输入“ls”命令,产看下系统根目录下都有哪 些文件,如下图所示: 从上图可以看到系统根目录下都有哪些文件夹,我们来看下这些文件夹的具体功能: /bin 存储一些二进制可执行命令文件 /boot 存放 Ubuntu 系统内核和系统启动文件 /dev 存放设备节点 /etc 存放系统管理所需的配置文件 /home 普通用户默认目录,每个用户在改目录下都有一个以本用户名命名的文件夹 /lib /lib64 存放系统程序运行所需的库文件 /media 存放 Ubuntu 系统自动挂载的设备文件 /mnt 用于挂载的文件系统的挂载点 /opt 可选文件和程序的存放目录 /proc 通常用来保存系统信息和进程信息 /root 超级用户 root 的根目录文件 /sys 系统设备和文件层次结构,并向用户程序提供详细的内核数据信息 /tmp 存储系统和用户的临时文件 /usr 包括与系统用户直接有关的文件和目录 /var 存储一些不断变化的文件,比如日志文件 |
|
|
|
文件操作命令
创建文件命令 touch 我们在前面学习 vim 的时候,可以通过 vim 来创建一个文本文件,“touch”不仅可以用来创建文本文件, 还可以创建其它类型的文件,命令格式如下: touch [参数] [文件名] 参数说明: -a 只更改存取时间 -c 不建立任何文件 -d 使用指定的日期创建文件 -t 使用指定的时间创建文件 当我们使用“touch”命令创建文件的时候,如果创建的文件不存在,则会直接创建,如果创建的文件 已经存在,则会修改下文件的最后修改日期(修改成运行该命令时候的系统日期)。现在我们使用命令“cd ~”进入到用户的根目录下,然后使用“touch”命令创建一个名为 ceshi 的文件,运行结果如下图所示: 文件夹创建命令 mkdir mkdir 是用来创建文件夹的命令,在使用该命令的时候,要求当前用户在当前的目录下具有写权限,并且创 建的文件夹名称不能是当前目录中又有的目录,命令格式如下: mkdir [选项] 目录。.. 选项的说明如下: -m //设定权限(类似 chmod) -p //可以是一个路径命令,如果路径中的目录不存在,则依次创建他们 -v //每次创建新目录都显示信息 --help //显示帮助信息 --version //输出版本信息 我们可以使用 mkdir 创建一个名为“test”的文件夹,我们在终端运行命令“mkdir test”,运行结果如下图 所示: 文件删除命令 rm rm 命令可以删除文件和文件夹,在使用该命令的时候,要求当前用户在当前的目录下具有写权限,命令格 式如下: rm [选项]。.. 目录。.. 选项的说明如下: -d //删除可能仍有数据的目录(只限超级用户 root) -f //略过不存在的文件,不显示任何信息 -i //进行任何删除操作前,必须先确认 -r //同时删除该目录下的所有目录层 -v //详细显示进行的步骤 --help //显示帮助信息并退出 --version //显示版本信息并退出 我们使用“rm”命令删除前面创建的文件“ceshi”,我们在终端输入“rm ceshi”,然后回车就可以删 掉文件“ceshi”了,运行结果如下图所示: “rm”命令也可以删除文件夹,我们删除前面创建的 test 目录,我们在终端执行“rm -rf test”,运行结果 如下图所示: 文件复制命令 cp Linux 下文件复制的命令是“cp”,命令格式如下: cp [参数] [源文件] [目标文件] 参数的说明如下: -d //复制有符号连接的文件时,保留原始的连接 -f //强行复制文件,不管要复制的文件是否已经存在于目标目录 -r //递归处理,将指定目录下的文件及子目录一并处理 我们在用户跟目录下使用 mkdir 命令创建两个文件夹:ceshi1、ceshi2,如下图所示: 然后进入“ceshi1”文件夹,在 ceshi1 文件夹创建 a 文件,如下图所示: 我们将文件 a 复制到用户根目录下的 ceshi2 文件夹,运行结果如下图所示: 完成文件的复制,接下来我们来实现文件夹的复制,首先我们返回到用户根目录下,然后将 ceshi1 文件夹 复制到 ceshi2 文件夹,运行结果如下图所示: 移动文件命令 mv Linux 下文件移动的命令是 mv,命令格式如下: mv [参数] [源文件] [目标文件] 参数说明: -b //如果要覆盖文件的话覆盖前先进行备份 -f //若目标文件或目录与现在的文件重复,直接覆盖目的文件或目录 -i //若目标文件存在,则会询问是否覆盖 -u //若目标文件已经存在,且源文件比较新,则会更新 我们在前面创建了两个文件夹:ceshi1、ceshi2,在 ceshi1 文件夹创建了文件 a,我们将文件 a 重命名成文 件 b,然后将文件 b 移动到 ceshi2 文件夹,运行结果如下图所示: 文件接压缩命令 tar Linux 下常用的压缩包格式有两种:.bz2 和.gz。我们可以使用 tar 命令来解压或压缩这两种格式的压缩包, 命令格式如下: tar [必要参数] [选择参数] [文件] 必要参数说明如下: -A //新增压缩文件到已存在的压缩 -B //设置区块大小 -c //建立新的压缩文件 -d //记录文件的差别 -r //添加文件到已经压缩的文件 -u //添加改变了和现有的文件到已经存在的压缩文件 -x //从压缩的文件中提取文件 -t //显示压缩文件的内容 -z //支持 gzip 解压文件 -J //支持 bzip2 解压文件 -Z //支持 compress 解压文件 -v //显示操作过程 -k //保留原有文件不覆盖 -m //保留文件不被覆盖 -W //确认压缩文件的正确性 可选参数如下: -b //设置区块数目 -C //切换到指定目录 -f //指定压缩文件 --help //显示帮助信息 --version //显示版本信息 我们使用 tar 命令压缩生成.bz2 和.gz 压缩包,运行结果如下图所示: 在上图中我们分别压缩了.bz2 和.gz 两个格式的压缩包,其中压缩.bz2 格式的压缩包我们使用的参数 是-jcvf,而.gz 格式的压缩包使用的参数是-zcvf。下面在我们在来学习下 tar 解压文件,操作如下图所示: 在上图中,我们分别解压了.tar.bz2 和.gz 两种格式的压缩包。其中.tar.bz2 压缩包使用的-jxvf 参 数来解压的,而.gz 格式的压缩包使用-zxvf 参数来解压的。关于 tar 的命令我们就介绍到这里,更多详细 的用法大家可以去网上找下相关的文档。 文件查找命令 find 文件查找在我们的平常使用中也是很常见的,比如在 Linux 内核源码中,我们要查找某个文件的路径,这 是就会用到文件查找 find 命令了,器格式如下: find [路径][参数][关键字] 路径标识要从哪个目录下开始查找文件,如果不写默认从执行 find 的当前目录下开始查找。 参数说明如下: -name 按照文件名称查找,查找与 filename 匹配的文件 -depth 从指定目录下的最深层的子目录开始查找 -size 查找符合指定文件大小的文件 -type 查找符合指定文件类型的文件 -user 查找符合指定的拥有者的文件或目录 -gid 查找符合指定的群组识别码的文件或目录 -group 查找符合指定的群组名称的文件或目录 该命令的参数有很多,我们这里只是列举除了一些常用的。我们来使用 find 命令查找一下在目录“/etc” 下以“host”开头的文件,我们在终端输入“find /etc -name host*”命令,运行结果如下图所示: 从上图中我们可以看到在“/etc”目录下,以“host”关键字开头的文件全部查找出来了。 文本搜索命令 grep 有时候我们需要搜索出包含特定关键字的文件有哪些,这样就会用到 grep 这个命令,命令格式如下: grep [参数] 关键字 文件列表 参数说明如下: -b //在显示符合关键字的那一列前,标记处该列第 1 个字符的位编号 -a //不要忽略二进制的数据 -c //计算符合范本样式的列表 -i //忽略字符的大小写 -n //在显示符合样本范式的那一列前面,标出该列的列数编号 -r //在指定目录中递归查找 -v //反转查找,只显示不匹配的行 比如我们在“/etc”下递归查找包含字符“topeet”的文本,运行结果如下图所示:‘ |
|
|
|
只有小组成员才能发言,加入小组>>
771 浏览 0 评论
1146 浏览 1 评论
2527 浏览 5 评论
2858 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2709 浏览 6 评论
keil5中manage run-time environment怎么是灰色,不可以操作吗?
1054浏览 3评论
188浏览 2评论
453浏览 2评论
364浏览 2评论
M0518 PWM的电压输出只有2V左右,没有3.3V是怎么回事?
449浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-18 11:33 , Processed in 1.073304 second(s), Total 80, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号