发表于:2026-06-28 |

项目3 目录结构与文件管理

目录结构与文件类型

image81.png

image82.png

访问路径

image83.png

文件类型

image84.png

image85.png

image86.png

文件管理命令

目录操作

image87.png

pwd命令

•pwd命令用于显示用户当前工作目录的绝对路径(从根目录“/”开始)。

•在使用时,pwd命令通常不添加选项与参数,直接在命令行中使用。

补充:

~  : 用户家目录

~ = /home/linux

cd命令

image88.png

image89.png

image90.png

image91.png

ls命令 list=列表

image92.png

image93.png

通常,我们常用ls -l,或者ll(两个l)

image94.png

ls -a:查看所有文件,包括隐藏文件

image95.png

mkdir命令

mk=make

dir=directory

image96.png

常用选项

image97.png

image98.png

rmdir命令

rm=remove - 移除

dir=directory - 目录

image99.png

•rmdir命令的参数既可以是目录也可以是路径。

•rmdir命令只有一个常用的选项-p,-p选项表示递归删除,当参数为路径时,如果子目录被删除后,其上层目录也成为空目录,则上层目录会一并删除。当参数为一个空目录时,不需要使用选项,直接删除目录。

普通移除目录

image100.jpeg

通过-p选项移除目录

image101.png

image102.png

文件操作

image103.png

image104.png

image105.png

image106.png

image107.png

image108.png

image109.png

查看相关

创建普通文件

常见方式:1. vi/vim工具:创建普通文件,可编辑内容

  1. touch命令:创建普通文件,没有内容

  2. echo命令:创建普通文件,带有字符串中的内容

Bash

image103.png

image104.png

image105.png

image106.png

image107.png

image108.png

image109.png

image110.png

image103.png

image104.png

image105.png

image106.png

image107.png

image108.png

image109.png

复制、移动、删除

image111.png

1)复制文件内容

image112.png

2)将文件复制到指定目录

image113.png

3)复制目录

image114.png

image115.png

image116.png

如果mv命令后面是相同路径下的两个文件,则mv命令的作用就是重命名文件。

image117.png

image118.png

image119.png

image120.png

1)更新文件\目录时间

image121.png

2)创建空白文件

image122.png

文件压缩与解压缩

image123.png

image124.png

image125.png

image126.png

tips:   “gzip -d” 也可以解压缩,以目的为导向,两个命令可以只记一个

image127.png

image128.png

image129.png

tar

image130.png

image131.png

image132.png

最常用:

-zcvf:打包并压缩、创建一个新的备份文件、显示打包过程、指定备份文件名(必选)

-zxvf:解压缩、创建一个新的备份文件、显示打包过程、指定备份文件名(必选)

文件权限

image133.png

image134.png

image135.png

image136.png

修改权限

chmod:修改某个文件/目录的权限

字符表示法修改权限:

Plain Text

u: user(文件拥有者)

g: 同组用户

o: 其他用户

加号(+):表示添加权限

减号(-):表示移除权限

image137.png

image138.png

image139.png

image140.png

image141.png

image142.png

案例

3-1 归档文件

3-2 打包并压缩文件

3-3 设置权限

请先在windows系统,解压“anli3.rar”

通过Final Shell上传到linux系统。

image143.png

image144.png

上传成功

image145.png

3-1:归档

把同类型的文件,放在一个文件夹

创建五个目录

image146.png

使用通配符,将同类型文件放进目录

image147.png

image148.png

3-2 打包文件

tar -zcvf…注意⚠️文件的先后顺序

image149.png

3-3 为文件设置权限

任务:将anli3.tar.gz压缩包设置权限,除了root用户,本部门用户只能查看,不能修改执行,非本部门同事查看权限也没有。

分析权限:

所有者:可读可写

同组(同部门):只可读

其他人(同事):没有权限

字符表示法:

所有者:rw-

同组:r–

其他人:—

数字表示法:

所有者:110 = 6

同组:100 =4

其他人:000 0

chmod 640 anli3.tar.gz

image150.png

chmod o-r anli3.tar.gz

image151.png

Vim

命令模式

光标移动

方向键,上下左右

复制和粘贴

image152.png

删除

image153.png

其他操作

image154.png

给大家测试的内容:

Plain Text

安装 Apache 和 mod_wsgi

如果您只是想试验 Django,请跳到下一部分;Django 包含一个可用于测试的轻量级 Web 服务器,因此在准备好在生产环境中部署 Django 之前,您不需要设置 Apache。

如果您想在生产站点上使用 Django,请使用 Apache 与 mod_wsgi。mod_wsgi 有两种模式:嵌入模式和守护模式。在嵌入模式下,mod_wsgi 类似于 mod_perl – 它将 Python 嵌入到 Apache 中,并在服务器启动时将 Python 代码加载到内存中。代码在整个 Apache 进程的生命周期内保持在内存中,这会比其他服务器配置方式带来显著的性能提升。在守护模式下,mod_wsgi 会生成一个独立的守护进程来处理请求。守护进程可以以与 Web 服务器不同的用户身份运行,从而可能提高安全性。守护进程可以在不重新启动整个 Apache Web 服务器的情况下重新启动,从而可能使代码库的刷新更加无缝。请参考 mod_wsgi 文档以确定哪种模式适合您的设置。确保已安装 Apache 并启用了 mod_wsgi 模块。Django 将与支持 mod_wsgi 的任何版本的 Apache 配合使用。

若已安装 mod_wsgi 模块,请查看 Django 如何利用 mod_wsgi 工作 了解如何配置。

如果由于某种原因你不能使用 mod_wsgi,请不要担心: Django 支持许多其他部署选项。一个是 uWSGI ;它和 nginx 配合使用很好。此外,Django 遵循 WSGI 规范( PEP 3333 ),允许它在各种服务器平台上运行。

运行你的数据库

如果你打算使用 Django 的数据库 API 功能,你需要确保一个数据库服务器正在运行。Django 支持许多不同的数据库服务器,官方支持 PostgreSQL、MariaDB、MySQL、Oracle 和 SQLite。

如果你正在开发一个小项目或不打算在生产环境中部署的东西,SQLite 通常是最好的选择,因为它不需要运行一个单独的服务器。然而,SQLite 与其他数据库有许多不同之处,所以如果你正在开发一些实质性的东西,建议使用你计划在生产中使用的同一数据库进行开发。

除了官方支持的数据库,还有 第三方提供的后端 允许你在 Django 中使用其他数据库。

要使用 SQLite 以外的其他数据库,你需要确保安装了适当的 Python 数据库绑定:

如果您使用 PostgreSQL,您将需要 psycopg 或 psycopg2 包。有关更多详细信息,请参阅 PostgreSQL notes。

如果你正在使用 MySQL 或 MariaDB,则需要一个像

mysqlclient

一样的 DB API 驱动。 详细信息参见 MySQL 后端注意事项。

如果你正在使用 SQLite,则可能需要阅读 SQLite 后端笔记 。

如果你使用的是 Oracle,你需要安装 oracledb,但请阅读 Oracle 后端的说明 以了解有关支持的 Oracle 版本和

oracledb

的详细信息。

如果你使用的是非官方的第三方后端,请参阅提供的文档以了解任何其他要求。

并确保

DATABASES

字典中 ‘default’

项的以下键与你的数据库连接设置匹配:

ENGINE

– 可选值有 ‘django.db.backends.sqlite3’

,’django.db.backends.postgresql’

,’django.db.backends.mysql’

,或 ‘django.db.backends.oracle’

。其它 可用后端。

NAME

—— 你的数据库名称。如果你使用 SQLite,数据库将是计算机上的一个文件。在这种情况下,NAME

应该是该文件的完整绝对路径,包括文件名。你不需要预先创建任何内容;数据库文件将在需要时自动创建。默认值 BASE_DIR / ‘db.sqlite3’

会将文件存储在项目目录中。

SQLite 以外的其它数据库

编辑模式

编辑模式也称为输入模式,在编辑模式下,用户可以正常地输入、修改文件内容。

image155.png

切换编辑模式,左下角会出现”插入“字样

image156.png

练习1.在终端输入:

进入vim工具

image157.jpeg

左下角显示文件名及新文件标识

2.按键盘“i”,切换至编辑模式

左下角会显示“插入”字样

image158.png

3.将下面这段文字,复制到vim编辑器

Plain Text

安装 Apache 和 mod_wsgi

如果您只是想试验 Django,请跳到下一部分;Django 包含一个可用于测试的轻量级 Web 服务器,因此在准备好在生产环境中部署 Django 之前,您不需要设置 Apache。

如果您想在生产站点上使用 Django,请使用 Apache 与 mod_wsgi。mod_wsgi 有两种模式:嵌入模式和守护模式。在嵌入模式下,mod_wsgi 类似于 mod_perl – 它将 Python 嵌入到 Apache 中,并在服务器启动时将 Python 代码加载到内存中。代码在整个 Apache 进程的生命周期内保持在内存中,这会比其他服务器配置方式带来显著的性能提升。在守护模式下,mod_wsgi 会生成一个独立的守护进程来处理请求。守护进程可以以与 Web 服务器不同的用户身份运行,从而可能提高安全性。守护进程可以在不重新启动整个 Apache Web 服务器的情况下重新启动,从而可能使代码库的刷新更加无缝。请参考 mod_wsgi 文档以确定哪种模式适合您的设置。确保已安装 Apache 并启用了 mod_wsgi 模块。Django 将与支持 mod_wsgi 的任何版本的 Apache 配合使用。

若已安装 mod_wsgi 模块,请查看 Django 如何利用 mod_wsgi 工作 了解如何配置。

如果由于某种原因你不能使用 mod_wsgi,请不要担心: Django 支持许多其他部署选项。一个是 uWSGI ;它和 nginx 配合使用很好。此外,Django 遵循 WSGI 规范( PEP 3333 ),允许它在各种服务器平台上运行。

运行你的数据库

如果你打算使用 Django 的数据库 API 功能,你需要确保一个数据库服务器正在运行。Django 支持许多不同的数据库服务器,官方支持 PostgreSQL、MariaDB、MySQL、Oracle 和 SQLite。

如果你正在开发一个小项目或不打算在生产环境中部署的东西,SQLite 通常是最好的选择,因为它不需要运行一个单独的服务器。然而,SQLite 与其他数据库有许多不同之处,所以如果你正在开发一些实质性的东西,建议使用你计划在生产中使用的同一数据库进行开发。

除了官方支持的数据库,还有 第三方提供的后端 允许你在 Django 中使用其他数据库。

要使用 SQLite 以外的其他数据库,你需要确保安装了适当的 Python 数据库绑定:

如果您使用 PostgreSQL,您将需要 psycopg 或 psycopg2 包。有关更多详细信息,请参阅 PostgreSQL notes。

如果你正在使用 MySQL 或 MariaDB,则需要一个像

mysqlclient

一样的 DB API 驱动。 详细信息参见 MySQL 后端注意事项。

如果你正在使用 SQLite,则可能需要阅读 SQLite 后端笔记 。

如果你使用的是 Oracle,你需要安装 oracledb,但请阅读 Oracle 后端的说明 以了解有关支持的 Oracle 版本和

oracledb

的详细信息。

如果你使用的是非官方的第三方后端,请参阅提供的文档以了解任何其他要求。

并确保

DATABASES

字典中 ‘default’

项的以下键与你的数据库连接设置匹配:

ENGINE

– 可选值有 ‘django.db.backends.sqlite3’

,’django.db.backends.postgresql’

,’django.db.backends.mysql’

,或 ‘django.db.backends.oracle’

。其它 可用后端。

NAME

—— 你的数据库名称。如果你使用 SQLite,数据库将是计算机上的一个文件。在这种情况下,NAME

应该是该文件的完整绝对路径,包括文件名。你不需要预先创建任何内容;数据库文件将在需要时自动创建。默认值 BASE_DIR / ‘db.sqlite3’

会将文件存储在项目目录中。

SQLite 以外的其它数据库

image159.png

4.保存并退出

image160.png

返回至用户家目录,此时可以看到我们刚刚插入的文件内容。

image161.png

末行模式

•所谓末行模式就是在文件最后一行输入命令完成一定的操作。

•末行模式主要用于保存或不保存退出文件,以及设置vim编辑器的工作环境。

•在命令行模式按“:”符号可以切换到末行模式。

image162.png

image163.png

案例4

更改主机名

从 linux 用户切换至 ROOT 用户

注意:这一步不完成,后续操作无法正常进行!

image164.png

2.输入ifconfig命令,查看本机ip地址

image165.png

记录下自己linux系统的IP地址

3.使用vim打开/etc/hosts文件

image166.png

3.打开文件后,按i命令切换至编辑模式

4.在/etc/hosts文件中添加linux系统的IP地址与学号,添加之后文件如图所示

image167.png

5.使用reboot命令重启服务器(linux系统)

注意!!!!输入重启命令后,final shell会断开连接,这是因为服务器在重启,用户无法正常访问

6.等几分钟之后,重新连接服务器,这时候可以看到原来的localhost已经切换成自己的学号

image168.png

上一篇:
下一篇: