Linux 中的 ".":看似简单却至关重要的符号详解

💡 原文中文,约4600字,阅读约需11分钟。
📝

内容提要

在Linux中,符号“.”有多重含义,包括表示当前目录、隐藏文件、执行脚本和正则表达式中的任意字符。理解这些功能有助于提高操作效率并避免安全风险,如误执行恶意脚本。

🎯

关键要点

  • 在Linux中,符号'.'有多重含义,包括表示当前目录、隐藏文件、执行脚本和正则表达式中的任意字符。

  • '.'表示当前工作目录(CWD),与'..'共同构成相对路径的基础。

  • 使用'.'作为参数可以间接表示当前目录,且可与其他路径拼接。

  • Linux默认不将当前目录添加到环境变量PATH中,需使用'./'前缀执行当前目录下的可执行文件。

  • 将'.'添加到PATH存在安全风险,可能误触发恶意程序。

  • 以'.'开头的文件名/目录名被视为隐藏文件/目录,默认不在ls命令输出中显示。

  • 隐藏文件的典型应用是点文件(Dotfiles),如.bashrc、.ssh等。

  • 在Bash shell中,'.'是source命令的同义词,用于在当前shell中执行脚本。

  • 在正则表达式中,'.'是特殊元字符,代表匹配任意单个字符。

  • '.'在Linux中还有其他小众但实用的场景,如版本号分隔符和Makefile中的伪目标声明。

  • 理解'.'的多重角色可以提升操作效率并避免安全风险。

延伸问答

在Linux中,符号'.'的主要功能是什么?

符号'.'在Linux中表示当前工作目录、隐藏文件、执行脚本和正则表达式中的任意字符。

如何在Linux中使用'.'表示当前目录?

可以通过命令如'ls .'列出当前目录下的文件,或使用'./'前缀执行当前目录下的可执行文件。

将'.'添加到PATH环境变量有什么风险?

将'.'添加到PATH可能导致误执行恶意程序,因为系统会优先在当前目录中查找可执行文件。

如何查看Linux中的隐藏文件?

使用命令'ls -a'可以显示当前目录下的所有文件,包括以'.'开头的隐藏文件。

在Bash中,'.'和'source'命令有什么关系?

在Bash中,'.'是'source'命令的同义词,用于在当前shell中执行脚本。

正则表达式中的'.'有什么作用?

在正则表达式中,'.'是一个特殊元字符,代表匹配任意单个字符(不包括换行符)。

➡️

继续阅读