linux

centos7 怎么检查有哪些开机自启动

在 CentOS 7 上,你可以使用 systemctl 命令来检查当前系统中的开机自启动服务。以下是具体的步骤:

  1. 打开终端或 SSH 连接到你的 CentOS 7 服务器。

  2. 使用以下命令列出所有已启用的开机自启动服务:

    systemctl list-unit-files --type=service | grep enabled
    

    这将显示所有已启用的服务,并列出其状态为 “enabled”。

    注意:你需要具有管理员权限或以 root 用户身份运行该命令。

  3. 检查列表中的服务,并查看你感兴趣的服务是否在其中。

    如果你只想查找特定的服务,你可以在 grep 命令后面添加服务名的关键字,如:

    systemctl list-unit-files --type=service | grep enabled | grep <关键字>
    

    <关键字> 替换为你要搜索的服务名的一部分。

通过执行上述步骤,你将获得一个列出了 CentOS 7 中已启用开机自启动服务的列表。


centos7 怎么设置开机自启动

在 CentOS 7 上,你可以使用 systemctl 命令设置开机自启动服务。以下是具体的步骤:

  1. 打开终端或 SSH 连接到你的 CentOS 7 服务器。

  2. 使用以下命令来设置一个服务在开机时自动启动:

    sudo systemctl enable <服务名>
    

    <服务名> 替换为你要设置为开机自启动的服务的名称。

    例如,如果要设置 httpd 服务在开机时自动启动,命令将是:

    sudo systemctl enable httpd
    

    注意:你需要具有管理员权限或以 root 用户身份运行该命令。

  3. 输入你的密码以确认操作。

    系统会创建一个符号链接,将服务的启动脚本放置在开机启动目录中,以便在每次启动时自动启动服务。

  4. 完成上述步骤后,重启系统以确保服务在开机时自动启动。

    sudo reboot
    

    系统会重新启动,并在启动过程中自动启动设置为开机自启动的服务。

通过执行上述步骤,你可以设置 CentOS 7 中的服务在开机时自动启动。请注意,这适用于 System V (SysV) 类型的服务。对于 Systemd 类型的服务,使用 systemctl 命令设置开机自启动可能会有所不同。


linux yum 怎么安装和卸载软件

在 Linux 上使用 yum 包管理器可以方便地安装和卸载软件。以下是在 CentOS 7 上使用 yum 安装和卸载软件的步骤:

安装软件:

  1. 打开终端或 SSH 连接到你的 CentOS 7 服务器。

  2. 使用以下命令来搜索软件包:

    yum search <关键字>
    

    <关键字> 替换为你要搜索的软件包的名称或关键字。

  3. 根据搜索结果选择你要安装的软件包。注意软件包的名称和描述,以确定正确的软件包。

  4. 使用以下命令来安装软件包:

    sudo yum install <软件包名>
    

    <软件包名> 替换为你要安装的软件包的名称。

    例如,要安装 nginx,命令将是:

    sudo yum install nginx
    

    系统将下载并安装指定的软件包及其依赖项。

卸载软件:

  1. 打开终端或 SSH 连接到你的 CentOS 7 服务器。

  2. 使用以下命令来列出已安装的软件包:

    sudo yum list installed
    

    这将显示所有已安装的软件包列表。

  3. 根据列表中的软件包名称,找到你要卸载的软件包。

  4. 使用以下命令来卸载软件包:

    sudo yum remove <软件包名>
    

    <软件包名> 替换为你要卸载的软件包的名称。

    例如,要卸载 nginx,命令将是:

    sudo yum remove nginx
    

    系统将卸载指定的软件包及其相关依赖项。

通过执行上述步骤,你可以在 CentOS 7 上使用 yum 包管理器安装和卸载软件。


centos7 防火墙状态

要检查CentOS 7上的防火墙状态,可以执行以下命令:

  1. 查看防火墙状态:
sudo systemctl status firewalld

该命令将显示防火墙服务(firewalld)的运行状态,包括是否处于活动状态(active)和是否正在运行(running)。

  1. 检查防火墙规则:
sudo firewall-cmd --list-all

该命令将列出当前防火墙的规则配置,包括开放的端口、允许的服务和其他配置信息。

  1. 查看已开放的端口:
sudo firewall-cmd --list-ports

该命令将显示已在防火墙上开放的端口列表。

如果防火墙状态为active并且有相应的规则配置,则表示防火墙正在运行,并限制了特定的网络流量。您可以根据需要调整防火墙规则,以允许或阻止特定端口或服务的访问。

请注意,上述命令需要使用root用户或具有sudo权限的用户来执行。如果防火墙服务为inactive或未安装,那么可能没有防火墙配置或防火墙服务未运行。

Bash Shell

Bash Shell(GNU Bash)是一种在Unix和Linux操作系统上广泛使用的命令行解释器和脚本语言。它是Bourne Shell(sh)的一种增强版本,也是许多Linux发行版的默认Shell。

Bash提供了一个交互式的命令行界面,用户可以在其中输入命令并与操作系统进行交互。它还支持脚本编程,允许用户编写一系列的命令以执行复杂的任务。

Bash具有丰富的功能,包括变量、条件语句、循环结构、函数、输入/输出重定向、管道等。它还支持通配符扩展和命令历史记录,使得在命令行中进行操作更加便捷和灵活。

Bash Shell在系统管理、自动化任务、脚本编程、软件开发等方面都扮演着重要的角色。它是一种强大而灵活的工具,可用于处理和操作文本、文件、进程和系统资源。

cat more less 区别

catmoreless 都是在 Linux 系统中用于查看文本文件内容的命令,但它们在功能和用法上有一些区别:

cat(concatenate)命令:

  • cat 命令用于连接文件并将它们的内容打印到标准输出。
  • 它主要用于显示文件的内容,将整个文件的内容一次性输出到终端。
  • cat 命令将整个文件加载到内存中,适用于小型文件。
  • 它通常用于简单地将一个或多个文件的内容输出到屏幕上,或将文件内容重定向到其他命令或文件中。

more 命令:

  • more 是一个分页显示工具,用于浏览文本文件的内容。
  • 它将文本内容分页显示,一次显示一页,按下空格键进行翻页。
  • more 适用于大型文件,因为它按需加载和显示文件内容,而不会将整个文件加载到内存中。
  • 它提供了基本的导航功能,例如向下翻页、向上翻页、搜索、跳转等。

less 命令:

  • less 也是一个分页显示工具,类似于 more,但提供了更多的功能和交互性。
  • 它可以处理大型文件,并在需要时按需加载和显示文件内容。
  • less 提供了更多的交互式功能,例如向上/向下翻页、搜索、跳转到指定行、复制文本等。
  • 它允许你在文件浏览过程中进行搜索、编辑、查找等操作,更适合阅读和浏览文件内容。

总结:

  • cat 用于简单地将文件内容输出到屏幕上或重定向到其他位置。
  • moreless 用于浏览文本文件内容,按需分页显示,适用于大型文件,但 less 提供更多的功能和交互性。

在实际使用中,如果只需要简单地显示文件内容或将内容重定向到其他地方,可以使用 cat。如果需要按页浏览大型文件或进行搜索、编辑等操作,可以使用 morelessless 提供了更多的功能和灵活性,是更高级的文本查看工具。

Linux的目录结构

Linux的目录结构是一个标准化的层次结构,用于组织和管理文件和目录。以下是Linux系统中一些常用的目录:

  1. /:根目录,是整个文件系统的起点。
  2. /bin:系统的可执行二进制文件(命令)。
  3. /boot:启动和引导文件,包括内核和引导加载程序。
  4. /dev:设备文件目录,包含与硬件设备的接口文件。
  5. /etc:系统的配置文件目录,包括系统级配置文件和服务的配置文件。
  6. /home:用户的主目录,每个用户都有一个独立的子目录。
  7. /lib:共享库文件,系统和应用程序使用的共享库。
  8. /media:可移动介质挂载点,如光驱、USB 设备等。
  9. /mnt:临时挂载目录,用于临时挂载其他文件系统。
  10. /opt:可选的应用程序目录,用于安装第三方软件。
  11. /proc:虚拟文件系统,提供有关系统内核和进程的信息。
  12. /root:root 用户的主目录。
  13. /sbin:系统管理员使用的系统二进制文件。
  14. /tmp:临时文件目录,存储临时文件和目录。
  15. /usr:用户程序和数据的主目录,包含用户级应用程序和文件。
  16. /var:变量文件目录,包含经常变化的文件,如日志文件和缓存文件。

这只是Linux目录结构的一部分,还有其他目录和子目录。每个目录都有其特定的用途和功能,用于组织和存储不同类型的文件和数据。了解这些常用目录将有助于你在Linux系统中定位和管理文件。

帮助命令

在 CentOS 7 中,使用 more 命令时,你可以通过以下方式获取帮助和查看命令的使用说明:

  1. more --help:在终端中输入该命令,将显示 more 命令的基本使用说明和可用选项的简要介绍。

  2. man more:在终端中输入该命令,将打开 more 命令的手册页(man page),其中包含了更详细的帮助文档。手册页中提供了更全面的关于 more 命令的介绍、命令选项的说明以及示例用法。

    在手册页中,你可以使用上下箭头键进行浏览,按下 q 键退出手册页的查看。

使用上述命令和方法,你可以获得更详细的关于 more 命令的帮助和说明,包括命令选项、使用方法和示例等。

一切皆文件

在 Linux 中,“一切皆文件” 是一个常见的概念,它表明在 Linux 系统中,几乎所有的事物(包括硬件设备、文件、目录、进程等)都被抽象为文件的概念。

这个概念的思想主要有以下几个原因:

  1. 统一的接口:将各种不同类型的实体都视为文件,可以通过统一的接口进行处理。这使得在 Linux 系统中,对于不同类型的实体(如硬件设备、网络连接等)的操作和管理更加一致和统一。

  2. 一致的权限控制:文件系统为每个文件和目录提供了权限控制机制,通过文件的权限和属性可以决定用户对其是否具有读、写、执行等操作的权限。将所有实体都视为文件,可以统一使用文件系统的权限机制来管理和控制对各种实体的访问权限。

  3. 简化设计和开发:将各种实体都抽象为文件,可以简化系统的设计和开发。文件系统提供了一套通用的文件操作接口,开发者可以使用相同的方式来读写不同类型的实体,而无需为每个实体设计特定的操作接口。

尽管在实际上并非所有的实体都是文件(例如,网络连接、进程等),但将其抽象为文件的概念有助于提供一致的接口和权限控制,使系统更加统一和灵活。

这种 “一切皆文件” 的思想是 Unix 和 Linux 系统的一个基本原则之一,它为系统的设计、操作和管理提供了一种统一而简洁的方式。

服务管理指令

在 CentOS 7 中,可以使用 systemctl 命令来管理系统服务。下面是一些常用的服务管理指令:

  1. 启动一个服务:

    sudo systemctl start service_name
    

    其中,service_name 是要启动的服务的名称。

  2. 停止一个服务:

    sudo systemctl stop service_name
    

    其中,service_name 是要停止的服务的名称。

  3. 重启一个服务:

    sudo systemctl restart service_name
    

    其中,service_name 是要重启的服务的名称。

  4. 查看服务状态:

    systemctl status service_name
    

    其中,service_name 是要查看状态的服务的名称。

  5. 设置服务开机自启动:

    sudo systemctl enable service_name
    

    其中,service_name 是要设置开机自启动的服务的名称。

  6. 禁用服务开机自启动:

    sudo systemctl disable service_name
    

    其中,service_name 是要禁用开机自启动的服务的名称。

  7. 查看所有已启用的服务:

    systemctl list-unit-files --type=service --state=enabled
    systemctl list-unit-files --type=service | grep enabled
    
    
    

这些指令提供了基本的服务管理功能,可以启动、停止、重启、查看状态以及设置开机自启动等操作。请将 service_name 替换为实际的服务名称,例如 httpdmysql 等。

请注意,执行服务管理指令时可能需要使用 sudo 或具有管理员权限的用户才能成功操作。

查看当前防火墙的状况

在 CentOS 7 上,你可以使用以下命令来查看当前防火墙的状态:

  1. 使用 systemctl 命令查看 firewalld 服务状态:

    systemctl status firewalld
    

    如果 firewalld 服务正在运行,则表示防火墙处于启用状态。

  2. 使用 firewall-cmd 命令查看防火墙配置:

    firewall-cmd --state
    

    如果输出为 running,则表示防火墙正在运行。

另外,你还可以使用以下命令来查看防火墙规则和配置:

  1. 查看防火墙规则:

    firewall-cmd --list-all
    

    该命令将显示当前防火墙的所有规则,包括打开的端口、允许的服务等信息。

  2. 查看开放的端口:

    firewall-cmd --list-ports
    

    该命令将列出当前防火墙开放的所有端口。

需要注意的是,执行以上命令可能需要使用 sudo 或具有管理员权限的用户才能成功获取防火墙状态和配置信息。

如果你的系统上使用的是 iptables 防火墙而不是 firewalld,你可以使用 iptables -L 命令来查看 iptables 防火墙规则和状态。

希望这能帮助到你!如果你有其他问题,请随时提问。

rpm

以下是一些常用的 RPM 命令示例,用于在 CentOS 7(以及其他基于 Red Hat 的 Linux 发行版)中管理软件包:

  1. 安装软件包:

    rpm -i package.rpm
    

    其中,package.rpm 是要安装的软件包的 RPM 文件。

  2. 升级软件包:

    rpm -U package.rpm
    

    该命令用于升级已安装的软件包。如果软件包已经安装,将执行升级操作;如果软件包尚未安装,将执行安装操作。

  3. 删除软件包:

    rpm -e package_name
    

    其中,package_name 是要删除的软件包的名称。

  4. 列出已安装的软件包:

    rpm -qa
    

    该命令将列出系统上已安装的所有软件包。

  5. 查询软件包信息:

    rpm -q package_name
    

    该命令将显示指定软件包的详细信息,包括版本号、发布者、安装日期等。

  6. 查找文件所属的软件包:

    rpm -qf /path/to/file
    

    该命令将显示指定文件所属的软件包名称。

  7. 列出软件包中的文件:

    rpm -ql package_name
    

    该命令将列出指定软件包中安装的所有文件。

这些是一些常用的 RPM 命令示例,用于安装、升级、删除和查询软件包。请注意,在执行上述命令时,可能需要使用 sudo 或具有管理员权限的用户才能成功操作。

希望这些示例对你有帮助!如果你有其他问题,请随时提问。

yum

以下是一些常用的 yum 命令示例,用于在 CentOS 7(以及其他基于 Red Hat 的 Linux 发行版)中管理软件包:

  1. 安装软件包:

    sudo yum install package_name
    

    其中,package_name 是要安装的软件包的名称。

  2. 升级软件包:

    sudo yum update package_name
    

    该命令将升级指定的软件包到最新可用版本。

  3. 删除软件包:

    sudo yum remove package_name
    

    该命令将删除指定的软件包及其相关依赖项。

  4. 搜索软件包:

    yum search search_keyword
    

    使用 search_keyword 替换为你要搜索的关键字,yum 将列出与关键字匹配的可用软件包。

  5. 列出已安装的软件包:

    yum list installed
    

    该命令将列出系统上已安装的所有软件包。

  6. 列出可用的软件包:

    yum list available
    

    该命令将列出所有可用的软件包。

  7. 清除缓存:

    sudo yum clean all
    

    该命令将清除 yum 的缓存,包括下载的软件包和元数据文件。

  8. 列出软件包的信息:

    yum info package_name
    

    该命令将显示指定软件包的详细信息,包括版本号、发布者、安装日期等。

这些是一些常用的 yum 命令示例,用于安装、升级、删除、搜索和查询软件包。请注意,在执行上述命令时,可能需要使用 sudo 或具有管理员权限的用户才能成功操作。

希望这些示例对你有帮助!如果你有其他问题,请随时提问。

ps

以下是一些常用的 ps 命令示例,用于在 Linux 系统上查看进程信息:

  1. 列出当前用户的所有进程:

    ps u
    

    该命令将列出当前用户运行的所有进程的详细信息,包括进程ID(PID)、CPU利用率、内存使用等。

  2. 列出所有进程:

    ps aux
    

    该命令将列出所有运行中的进程的详细信息,包括进程ID(PID)、所属用户、CPU利用率、内存使用等。

  3. 列出指定进程的详细信息:

    ps -p PID
    

    PID 替换为要查询的进程的进程ID,该命令将显示该进程的详细信息。

  4. 查找特定进程:

    ps -ef | grep process_name
    

    process_name 替换为要查找的进程的名称,该命令将显示与进程名称匹配的进程信息。

  5. 动态显示进程信息:

    top
    

    top 命令以交互方式显示实时的系统进程信息。它会动态更新并显示当前的进程状态、CPU利用率、内存使用等信息。

这些是一些常用的 ps 命令示例,用于查看和管理系统中的进程。ps 命令提供了很多选项和参数,可以根据需要进行进一步的定制和过滤。

希望这些示例对你有帮助!如果你有其他问题,请随时提问。

systemctl

以下是一些常用的 systemctl 命令示例,用于在 CentOS 7(以及其他基于 systemd 的 Linux 发行版)中管理系统服务:

  1. 启动一个服务:

    sudo systemctl start service_name
    

    其中,service_name 是要启动的服务的名称。

  2. 停止一个服务:

    sudo systemctl stop service_name
    

    该命令将停止指定的服务。

  3. 重启一个服务:

    sudo systemctl restart service_name
    

    该命令将先停止再启动指定的服务。

  4. 查看服务状态:

    systemctl status service_name
    

    该命令将显示指定服务的当前状态,包括是否正在运行、最近的活动日志等。

  5. 启用一个服务开机自启动:

    sudo systemctl enable service_name
    

    该命令将设置指定的服务在系统启动时自动启动。

  6. 禁用一个服务开机自启动:

    sudo systemctl disable service_name
    

    该命令将设置指定的服务在系统启动时不自动启动。

  7. 查看已启用的服务列表:

    systemctl list-unit-files --type=service --state=enabled
    

    该命令将列出当前系统中已启用的服务的列表。

  8. 查看所有服务列表:

    systemctl list-unit-files --type=service --all
    

    该命令将列出当前系统中所有服务的列表,包括已启用和未启用的。

这些是一些常用的 systemctl 命令示例,用于管理系统服务的启动、停止、重启、状态查询和开机自启动配置。请注意,在执行上述命令时,可能需要使用 sudo 或具有管理员权限的用户才能成功操作。

希望这些示例对你有帮助!如果你有其他问题,请随时提问。

ln -s

ln -s 是在 Linux 中创建符号链接(Symbolic Link)的命令。

符号链接是一种特殊的文件类型,它允许你创建一个指向另一个文件或目录的引用。通过符号链接,你可以使用不同的路径访问同一个文件或目录,或者创建对其他文件或目录的快捷方式。

ln -s 命令的语法如下:

ln -s  

其中, 是目标文件或目录的路径, 是要创建的符号链接的名称。

以下是 ln -s 命令的示例用法:

  1. 创建文件的符号链接:

    ln -s /path/to/file /path/to/symlink
    

    该命令将在 /path/to 目录下创建一个名为 symlink 的符号链接,指向 /path/to/file 文件。

  2. 创建目录的符号链接:

    ln -s /path/to/directory /path/to/symlink
    

    该命令将在 /path/to 目录下创建一个名为 symlink 的符号链接,指向 /path/to/directory 目录。

创建的符号链接可以通过访问符号链接来间接访问目标文件或目录。删除符号链接不会影响目标文件或目录本身。

希望这个解答对你有帮助!如果你还有其他问题,请随时提问。

help man

在 Bash Shell 中,当你尝试使用 help 命令查看帮助时,可能会遇到类似于 -bash: help: no help topics match 'command' 的错误消息。

这是因为 help 命令只能提供对 Shell 内置命令的帮助信息,而不能直接为外部命令(如系统命令或自定义脚本)提供帮助。

对于外部命令的帮助信息,通常可以通过以下方式获取:

  1. man 命令:尝试使用 man command 来查看外部命令的手册页。例如,man ps 将显示与 ps 命令相关的手册页。

  2. --help 选项:很多外部命令支持 --help 选项,通过在命令后面添加 --help,可以获取命令的简要用法和选项信息。例如,ps --help 将显示 ps 命令的帮助信息。

  3. 外部命令的文档或官方网站:有些外部命令可能有相应的文档或官方网站,你可以查阅这些资源以获取更详细的命令使用说明。

请注意,在某些情况下,特定的 Linux 发行版或配置可能会提供自定义的帮助系统或特定命令的补充帮助信息。这些会因发行版和配置而有所不同。

总结起来,当你在 Bash Shell 中使用 help 命令时,它仅提供对 Shell 内置命令的帮助。对于外部命令的帮助,你需要使用 man 命令、--help 选项或查阅相关文档。

希望这个解答对你有帮助!如果你还有其他问题,请随时提问。

less 显示行号

less 命令中,可以通过 -N 选项来显示文件内容的行号。以下是在 less 命令中显示行号的示例:

less -N filename

该命令将打开名为 filename 的文件,并在左侧显示每行的行号。你可以使用上下箭头键或 Page Up/Page Down 键来滚动浏览文件内容,并通过行号来定位特定行。

请注意,less 命令在默认情况下不会显示行号,因此你需要显式地使用 -N 选项来启用行号显示。

希望这个解答对你有帮助!如果你还有其他问题,请随时提问。

tar -zxvf

tar -zxvf 是一个常用的命令,用于解压缩和提取压缩文件。下面是对该命令中每个选项的解释:

  • tar:tar 是一个用于创建归档文件和提取归档文件的命令。
  • -z:表示使用 gzip 压缩算法处理文件,即解压缩 .tar.gz.tgz 格式的文件。
  • -x:表示解压缩或提取归档文件中的内容。
  • -v:表示在解压缩或提取文件的过程中显示详细的输出信息,以便你可以看到正在处理的文件名。
  • -f:后面跟着要处理的归档文件的名称。

综上所述,tar -zxvf 命令用于解压缩和提取 .tar.gz.tgz 格式的压缩文件,并在过程中显示详细的输出信息。

使用示例:

tar -zxvf archive.tar.gz

该命令将解压缩名为 archive.tar.gz 的文件,并将其内容提取到当前目录。

希望这个解答对你有帮助!如果你还有其他问题,请随时提问。

防火墙开放8080端口

要在防火墙中开放 8080 端口,你可以使用防火墙管理工具(如 firewalldiptables)进行配置。下面是使用 firewalldiptables 的示例方法:

使用 firewalld 的方法:

  1. 检查防火墙状态:

    sudo firewall-cmd --state
    

    确保防火墙处于活动状态。

  2. 开放 8080 端口:

    sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
    

    这将将 8080 端口添加到公共区域,并将设置永久生效。

  3. 重新加载防火墙配置:

    sudo firewall-cmd --reload
    

    这将重新加载防火墙配置,使更改生效。

使用 iptables 的方法:

  1. 检查防火墙规则:

    sudo iptables -L
    

    确保已经设置防火墙规则。

  2. 开放 8080 端口:

    sudo iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
    

    这将允许传入的 TCP 流量通过 8080 端口。

  3. 保存防火墙规则:

    sudo iptables-save > /etc/sysconfig/iptables
    

    这将保存防火墙规则,使其在系统重新启动后生效。

请注意,具体的命令可能因你所使用的 Linux 发行版和防火墙管理工具而有所不同。确保你以管理员权限运行这些命令。

希望对你有所帮助!如果还有其他问题,请随时提问。

“ll”

“ll” 是一个常用的 Linux 命令,它是 “ls -l” 的简写,用于显示当前目录下的文件和目录的详细信息。下面是一些 ll 命令的高级用法示例:

  1. 按文件大小排序:

    ll -S
    

    这将按文件大小对文件和目录进行排序,最大的文件将显示在列表的顶部。

  2. 逆序排序:

    ll -r
    

    这将逆序显示文件和目录列表,即最新的文件将显示在列表的顶部。

  3. 显示隐藏文件:

    ll -a
    

    默认情况下,ll 命令不显示以点 (.) 开头的隐藏文件和隐藏目录,使用 -a 选项可以显示它们。

  4. 显示文件大小单位:

    ll -h
    

    这将以人类可读的方式显示文件大小,例如使用 “K” 表示千字节、“M” 表示兆字节。

  5. 显示最后修改时间:

    ll -t
    

    这将按照文件最后修改的时间顺序显示文件和目录列表,最新修改的文件将显示在列表的顶部。

  6. 递归显示子目录:

    ll -R
    

    使用 -R 选项,ll 命令将递归地显示当前目录及其子目录下的文件和目录。

这些是 ll 命令的一些高级用法示例,希望对您有帮助。如果您有其他关于 ll 命令或 CentOS 7 的问题,请随时提问。

绝对路径 相对路径

绝对路径和相对路径是在文件系统中定位文件或目录时使用的两种不同方式。

  1. 绝对路径(Absolute Path):
    绝对路径是指从根目录(root directory)开始的完整路径,它可以准确地标识文件或目录的位置。在 Linux 中,根目录用斜杠 “/” 表示,后面跟着一系列目录名称,直到目标文件或目录。例如:

    /home/user/documents/file.txt
    

    在这个例子中,绝对路径指定了文件 file.txt 的完整位置,从根目录开始一直到目标文件。

  2. 相对路径(Relative Path):
    相对路径是相对于当前工作目录的路径,它描述了目标文件或目录相对于当前位置的位置关系。相对路径不需要从根目录开始,而是根据当前目录进行解释。有两个特殊符号用于表示相对路径:

    • 单个点 “.”:表示当前目录。
    • 双点 “…”:表示当前目录的上级目录。

    例如,假设当前目录是 “/home/user”,那么相对路径:

    ./documents/file.txt
    

    将解释为 “/home/user/documents/file.txt”,其中 “…” 表示上级目录。

使用绝对路径可以直接定位文件或目录,而使用相对路径可以根据当前位置进行相对定位。绝对路径在不同位置和不同用户之间是一致的,而相对路径的解释依赖于当前位置。在使用 cd 命令或在脚本中引用文件时,理解和正确使用绝对路径和相对路径是很重要的。

mkdir 高级用法

“mkdir” 是用于创建新目录的命令。虽然它是一个简单的命令,但有一些高级用法可以帮助您更灵活地创建目录。以下是一些 mkdir 命令的高级用法示例:

  1. 创建多级目录:

    mkdir -p path/to/directory
    

    使用 -p 选项,mkdir 命令将创建多级目录,即如果目录的父目录不存在,它们也会被自动创建。

  2. 设置目录权限:

    mkdir -m mode directory
    

    使用 -m 选项,可以在创建目录时指定权限模式(mode)。例如,要创建一个具有特定权限模式的目录,可以使用类似于 mkdir -m 755 directory 的命令。

  3. 创建多个目录:

    mkdir directory1 directory2 directory3
    

    在一条命令中同时创建多个目录。列出所有要创建的目录名称,用空格分隔。

  4. 使用绝对路径创建目录:

    mkdir /path/to/directory
    

    使用绝对路径创建目录,无论当前目录是什么,都会在指定路径下创建目录。

  5. 使用变量创建目录:

    directory="my_directory"
    mkdir "$directory"
    

    可以使用变量来指定目录名称,并在 mkdir 命令中引用该变量。

这些是一些 mkdir 命令的高级用法示例,它们可以帮助您更灵活地创建目录,并根据需要设置权限。如果您还有其他问题,请随时提问。

touch高级用法

“touch” 命令用于创建新文件或更新已存在的文件的访问和修改时间。虽然它是一个简单的命令,但是有一些高级用法可以帮助您更灵活地使用它。以下是一些 “touch” 命令的高级用法示例:

  1. 创建多个文件:

    touch file1 file2 file3
    

    在一条命令中同时创建多个文件。列出所有要创建的文件名称,用空格分隔。

  2. 创建文件并指定时间戳:

    touch -t YYYYMMDDHHMM.SS file
    

    使用 “-t” 选项,可以指定文件的访问和修改时间戳。时间戳格式为 YYYYMMDDHHMM.SS,例如 “202105011200.00” 表示 2021 年 5 月 1 日 12:00。

  3. 创建空白文件:

    touch file
    

    “touch” 命令默认会创建一个空白文件,如果文件已存在,则会更新其时间戳。

  4. 使用变量创建文件:

    filename="my_file.txt"
    touch "$filename"
    

    可以使用变量来指定文件名称,并在 “touch” 命令中引用该变量。

  5. 创建隐藏文件:

    touch .hidden_file
    

    在文件名前加上点号 (.) 可以创建一个隐藏文件,它在默认情况下不会在文件列表中显示。

这些是一些 “touch” 命令的高级用法示例,它们可以帮助您更灵活地创建和操作文件的时间戳。如果您还有其他问题,请随时提问。

你可能感兴趣的:(linux,服务器,运维)