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


访问路径

文件类型



文件管理命令
目录操作

pwd命令
•pwd命令用于显示用户当前工作目录的绝对路径(从根目录“/”开始)。
•在使用时,pwd命令通常不添加选项与参数,直接在命令行中使用。
补充:
~ : 用户家目录
~ = /home/linux
cd命令




ls命令 list=列表


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

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

mkdir命令
mk=make
dir=directory

常用选项


rmdir命令
rm=remove - 移除
dir=directory - 目录

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

通过-p选项移除目录


文件操作







查看相关
创建普通文件
常见方式:1. vi/vim工具:创建普通文件,可编辑内容
touch命令:创建普通文件,没有内容
echo命令:创建普通文件,带有字符串中的内容
Bash















复制、移动、删除

1)复制文件内容

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

3)复制目录



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




1)更新文件\目录时间

2)创建空白文件

文件压缩与解压缩




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



tar



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




修改权限
chmod:修改某个文件/目录的权限
字符表示法修改权限:
Plain Text
u: user(文件拥有者)
g: 同组用户
o: 其他用户
加号(+):表示添加权限
减号(-):表示移除权限






案例
3-1 归档文件
3-2 打包并压缩文件
3-3 设置权限
请先在windows系统,解压“anli3.rar”
通过Final Shell上传到linux系统。


上传成功

3-1:归档
把同类型的文件,放在一个文件夹
创建五个目录

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


3-2 打包文件
tar -zcvf…注意⚠️文件的先后顺序

3-3 为文件设置权限
任务:将anli3.tar.gz压缩包设置权限,除了root用户,本部门用户只能查看,不能修改执行,非本部门同事查看权限也没有。
分析权限:
所有者:可读可写
同组(同部门):只可读
其他人(同事):没有权限
字符表示法:
所有者:rw-
同组:r–
其他人:—
数字表示法:
所有者:110 = 6
同组:100 =4
其他人:000 0
chmod 640 anli3.tar.gz

chmod o-r anli3.tar.gz

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 以外的其它数据库
编辑模式
编辑模式也称为输入模式,在编辑模式下,用户可以正常地输入、修改文件内容。

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

练习1.在终端输入:
进入vim工具

左下角显示文件名及新文件标识
2.按键盘“i”,切换至编辑模式
左下角会显示“插入”字样

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 以外的其它数据库

4.保存并退出

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

末行模式
•所谓末行模式就是在文件最后一行输入命令完成一定的操作。
•末行模式主要用于保存或不保存退出文件,以及设置vim编辑器的工作环境。
•在命令行模式按“:”符号可以切换到末行模式。


案例4
更改主机名
从 linux 用户切换至 ROOT 用户
注意:这一步不完成,后续操作无法正常进行!

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

记录下自己linux系统的IP地址
3.使用vim打开/etc/hosts文件

3.打开文件后,按i命令切换至编辑模式
4.在/etc/hosts文件中添加linux系统的IP地址与学号,添加之后文件如图所示

5.使用reboot命令重启服务器(linux系统)
注意!!!!输入重启命令后,final shell会断开连接,这是因为服务器在重启,用户无法正常访问
6.等几分钟之后,重新连接服务器,这时候可以看到原来的localhost已经切换成自己的学号
