Linux 命令之 - echo
命令简介echo 是一个非常基本且常用的命令,它用于在终端或者文件中输出字符串。虽然功能简单,但是 echo 命令在 Shell 脚本编程中扮演着重要角色,可以用于输出信息、设置变量值、进行字符串操作等。此外,echo 还可以结合其他命令和特殊字符使用,实现更加强大的功能。
命令格式echo 命令的基本语法格式如下:
1echo [options] [string]
其中:
options: 用于指定 echo 命令的选项,例如 -n 去掉自动换行。
string: 需要输出的字符串。
参数说明echo 命令提供了多个可选参数,下表列出了常用的参数及其说明:
选项
功能
备注
-n
不输出结尾的换行符
-
-e “\a”
发出警告音
-
-e “\b”
删除前面的一个字符
-
-e “\c”
结尾不加换行符
-
-e “\f”
换行,光标扔停留在原来的坐标位置
-
-e “\n”
换行,光标移至行首
-
-e “\r”
光标移至行首,但不换行
-
-E
禁止反斜杠转移,与-e参数功能相反
-
—version
查看版本信息
-
–h ...
Linux 命令之 - gunzip
命令介绍gunzip 是一个使用广泛的解压缩命令,它用于解压被 gzip 压缩过的文件(扩展名为 .gz)。当然,对于解压被 gzip 压缩过的文件,还可以使用 gzip 自己,即 gzip -d 压缩包。
命令格式gunzip 命令的基本格式为: gunzip [选项] 文件
该命令常用的选项及各自的含义说明:
选项
含义
备注
-r
递归处理,解压缩指定目录下以及子目录下的所有文件
-
-c
把解压缩后的文件输出到标准输出设备。
-
-f
强制解压缩文件,不理会文件是否已存在等情况
-
-l
列出压缩文件内容。
-
-v
显示命令执行过程。
-
-t
测试压缩文件是否正常,但不对其做解压缩操作。
-
命令实例实例一:常规解压不带任何参数解压,将文件解压到当前目录下:
123456789101112131415161718[root@ubuntu2204-101 /data 07:31:20]# tree tar/tar/├── shadow.gz├── test1│ └── bolt.service.gz├── test2├── te ...
Linux 命令之 - chattr
命令介绍chattr 命令,专门用来修改文件或目录的隐藏属性,只有 root 用户可以使用。
命令格式该命令的基本格式为: chattr [+-=] [属性] 文件或目录名
参数说明
符号
含义
备注
+
表示给文件或目录添加属性
-
-
表示移除文件或目录拥有的某些属性
-
=
表示给文件或目录设定指定的属性
-
-R
递归更改目录下所有文件和子目录的扩展属性
对于目录非常有用
-V
显示命令版本信息
无需其他参数
-v
显示修改的文件和属性
可以查看哪些文件被修改了
扩展属性
选项
含义
备注
a
如果对文件设置 a 属性,那么只能在文件中増加数据,但是不能删除和修改数据;如果对目录设置 a 属性,那么只允许在目录中建立和修改文件,但是不允许删除文件;
-
A
不支持跟踪此文件的atime信息
-
c
自动压缩文件
-
i
如果对文件设置 i 属性,那么不允许对文件进行删除、改名,也不能添加和修改数据;如果对目录设置 i 属性,那么只能修改目录下文件中的数据,但不允许建立和删除文件;
-
j
...
Linux 命令之 - chmod
命令介绍chmod命令是用于修改文件或目录的权限的命令。它可以通过改变文件或目录的读、写、执行权限,来控制用户对文件或目录的访问权限。、
第一种: 使用数字修改文件权限Linux 系统中,文件的基本权限由 9 个字符组成,以 rwxrw-r-x 为例,我们可以使用数字来代表各个权限,各个权限与数字的对应关系如下:
字母
对应的数字
含义
备注
r
4
读
-
w
2
写
-
x
1
执行
-
由于这 9 个字符分属 3 类用户,因此每种用户身份包含 3 个权限(r、w、x),通过将 3 个权限对应的数字累加,最终得到的值即可作为每种用户所具有的权限。
拿 rwxrw-r-x 来说,所有者、所属组和其他人分别对应的权限值为:
用户身份
字母权限
数字权限
含义
备注
所有者
rwx
4+2+1 = 7
可读可写可执行
-
所属组
rw-
4+2+0 = 6
可读可写不能执行
-
其他人
r-x
4+0+1 = 5
可读不可写可执行
-
所以,此权限对应的权限值就是 765。
命令格式使用数字修改文件权限 ...
Linux 命令之 - chown
命令介绍chown 命令,可以认为是 “change owner” 的缩写,主要用于修改文件(或目录)的所属主,除此之外,这个命令也可以修改文件(或目录)的所属组。
命令格式当只需要修改所属主时,可使用如下 chown 命令的基本格式:chown [-R] 所属主 文件或目录
该命令常用的选项及各自的含义说明:
选项
含义
备注
-R
表示连同子目录中的所有文件,都更改所有者。
-
如果需要同时更改所属主和所属组,chown 命令的基本格式为:chown [-R] 所属主:所属组 文件或目录
注意:
在 chown 命令中,所属主和所属组中间也可以使用点(.),但会产生一个问题,如果用户在设定账号时加入了小数点(例如 zhangsan.temp),就会造成系统误判。因此,建议大家使用冒号连接所属主和所属组。
当然,chown 命令也支持单纯的修改文件或目录的所属组,例如 chown :group install.log 就表示修改 install.log 文件的所属组,但修改所属组通常使用 chgrp 命令,因此并不推荐大家使用 chown 命令。
另外 ...
Linux 命令之 - crontab
命令介绍在介绍 crontab 命令之前,我们首先要介绍一下 crond,因为 crontab 命令需要 crond 服务支持。crond 是 Linux 下用来周期地执行某种任务或等待处理某些事件的一个守护进程,和 Windows 中的计划任务有些类似。
crond 服务的启动和自启动方法如下:systemctl restart cron.service
其实,在安装完成操作系统后,默认会安装 crond 服务工具,且 crond 服务默认就是自启动的。crond 进程每分钟会定期检查是否有要执行的任务,如果有,则会自动执行该任务。
接下来,在介绍 crontab 命令。该命令和 at 命令类似,也是通过 /etc/cron.allow 和 /etc/cron.deny 文件来限制某些用户是否可以使用 crontab 命令的。而且原则也非常相似:
当系统中有 /etc/cron.allow 文件时,只有写入此文件的用户可以使用 crontab 命令,没有写入的用户不能使用 crontab 命令。同样,如果有此文件,/etc/cron.deny 文件会被忽略,因为 /etc/cron ...
Linux 命令之 - cp
命令介绍cp 命令,主要用来复制文件和目录,同时借助某些选项,还可以实现复制整个目录,以及比对两文件的新旧而予以升级等功能。
命令格式cp 命令的基本格式为: cp [选项] 源文件 目标文件
注意:源文件可以有多个,但这种情况下,目标文件必须是目录才可以。
常用选项参见表:
选项
作用
备注
-a
相当于 -d、-p、-r 选项的集合,这几个选项我们一一介绍;
-
-d
如果源文件为软链接(对硬链接无效),则复制出的目标文件也为软链接;
-
-i
询问,如果目标文件已经存在,则会询问是否覆盖;
-
-l
把目标文件建立为源文件的硬链接文件,而不是复制源文件;
-
-s
把目标文件建立为源文件的软链接文件,而不是复制源文件;
-
-p
复制后目标文件保留源文件的属性(包括所有者、所属组、权限和时间);
-
-r
递归复制,用于复制目录;
-
-u
若目标文件比源文件有差异,则使用该选项可以更新目标文件,此选项可用于对文件的升级和备用。
-
命令实例实例一:常规复制将当前目录下的 file1 文件复制到 /tmp 目录下:
...
Linux 命令之 - cd
命令介绍cd 命令,是 Change Directory 的缩写,用来切换工作目录。
Linux 命令按照来源方式,可分为两种,分别是 Shell 内置命令和外部命令。所谓 Shell 内置命令,就是 Shell 自带的命令,这些命令是没有执行文件的;而外部命令就是由程序员单独开发的,所以会有命令的执行文件。Linux 中的绝大多数命令是外部命令,而 cd 命令是一个典型的 Shell 内置命令,所以 cd 命令没有执行文件所在路径。
命令格式cd 命令的基本格式为: cd [相对路径或绝对路径]
除此之外,cd 命令后面可以跟一些特殊符号,表达固定的含义,如表所示:
特殊符号
作用
备注
~
代表当前登录用的主目录
-
~用户名
表示切换至指定用户的主目录。注意,中间没空格
-
-
回到上次进入的目录
-
.
代表当前目录
-
..
代表上级目录
-
命令实例实例一:进入目录不使用任何参数,后面跟目录表示直接进入该目录:
12[root@ubuntu2204-101 ~ 07:12:24]# cd /usr/local/src/[root@ubun ...
Apache 之三 - 启用 HTTPS
关于 Apache 安装部分,请参考:在 ubuntu 22.04 中,通过源码编译安装 LAMP 中的 Apache 服务
关于 Apache 虚拟主机的配置,请参考:Apache 之一 - 虚拟主机
为了演示效果,我这里又重新租用了一台非大陆的服务器,将之前所有的安装配置又重新做了一次
注意:以下操作都在 root 用户下执行
域名证书申请由于我们之前已经解析好了域名 apache.xxxxu.com ,所以我们只需要借助 腾讯云 去申请免费 1 年的 SSL 证书即可!具体申请过程这里不做演示。
证书申请好后,找到 apache 版本的下载到服务器的指定目录,然后解压到 /usr/local/ssl/ 目录下
Apache 主配置文件1.编辑 apache 主配置文件 /usr/local/apache2/conf/httpd.conf,找到 #LoadModule ssl_module modules/mod_ssl.so 和 #Include conf/extra/httpd-ssl.conf,将前面的 # 号去掉,启用 SSL 支持:
12345678# 加 ...
Apache 之二 - 用户认证
关于 Apache 安装部分,请参考:在 ubuntu 22.04 中,通过源码编译安装 LAMP 中的 Apache 服务
关于 Apache 虚拟主机的配置,请参考:Apache 之一 - 虚拟主机
注意:以下操作都在 root 用户下执行
用户认证的目的Apache配置用户认证的主要目的是确保网站内容或特定目录只能被授权用户访问,提高网站的安全性和保护敏感信息。通过用户认证,网站管理员可以限制对网站内容的访问,只允许经过身份验证的用户访问受保护的区域。
用户认证的作用包括:
保护敏感信息: 用户认证可以确保只有经过授权的用户才能访问包含敏感信息的页面或目录,防止未经授权的访问。
限制访问权限: 管理员可以根据用户的身份和权限设置不同的访问级别,例如管理员、普通用户等,从而控制其访问权限。
保护网站内容: 对于需要保护的网站内容,如会员信息、财务数据等,用户认证可以增加一层安全性,防止未经授权的访问。
监控访问记录: 用户认证可以记录每个用户的访问记录,包括登录时间、IP地址等信息,有助于监控和审计用户的访问行为。
总的来说,Apache配置用户认证可以帮 ...