在 macOS 和 Linux 中,波浪号 `~`的区别
文章目录
- 1、在 macOS 和 Linux 中,波浪号 `~`
- macOS
- 示例
- Linux
- 示例
- 区别总结
- 其他注意事项
- 示例
- macOS
- Linux
- 结论
- 2、`root` 用户的主目录通常是 `/root`
- 解释
- 示例
- 切换用户
- 使用 `su` 命令
- 使用 `sudo` 命令
- 验证当前用户
- 总结
1、在 macOS 和 Linux 中,波浪号 ~
在 macOS 和 Linux 中,波浪号 ~
都表示当前用户的主目录(Home Directory)。尽管它们在不同的操作系统中表示相同的含义,但具体的路径和行为可能略有不同。以下是详细说明:
macOS
dgq@dgqdeMac-mini ~ % pwd
/Users/dgq
在 macOS 中,~
通常表示当前用户的主目录,路径通常是 /Users/username
,其中 username
是当前登录用户的用户名。例如,如果用户名是 john
,那么 ~
就表示 /Users/john
。
示例
cd ~
:切换到当前用户的主目录,例如/Users/john
。cd ~/Documents
:切换到当前用户的Documents
目录,例如/Users/john/Documents
。
Linux
[root@localhost home]# pwd
/home
[root@localhost home]# ls
dgq
在 Linux 中,~
同样表示当前用户的主目录,路径通常是 /home/username
,其中 username
是当前登录用户的用户名。例如,如果用户名是 john
,那么 ~
就表示 /home/john
。
示例
cd ~
:切换到当前用户的主目录,例如/home/john
。cd ~/Documents
:切换到当前用户的Documents
目录,例如/home/john/Documents
。
区别总结
-
路径前缀:
- macOS:主目录路径通常是
/Users/username
。 - Linux:主目录路径通常是
/home/username
。
- macOS:主目录路径通常是
-
系统默认路径:
- macOS:默认的用户主目录位于
/Users
目录下。 - Linux:默认的用户主目录位于
/home
目录下。
- macOS:默认的用户主目录位于
-
符号链接和别名:
- macOS 和 Linux 都支持符号链接和别名,但具体路径可能因系统配置而异。
其他注意事项
-
环境变量:在 shell 脚本中,可以使用
$HOME
环境变量来表示当前用户的主目录。例如:cd $HOME
-
多用户系统:在多用户系统中,每个用户的主目录路径都会根据用户名有所不同。例如,用户
alice
的主目录可能是/Users/alice
(macOS)或/home/alice
(Linux)。
示例
假设你有一个用户 john
,下面是两个操作系统中的一些命令示例:
macOS
# 切换到 john 的主目录
cd ~
# 查看 john 的主目录内容
ls ~
# 创建一个新文件在 john 的 Documents 目录下
touch ~/Documents/newfile.txt
Linux
# 切换到 john 的主目录
cd ~
# 查看 john 的主目录内容
ls ~
# 创建一个新文件在 john 的 Documents 目录下
touch ~/Documents/newfile.txt
结论
尽管 macOS 和 Linux 在文件系统路径前缀上有所不同,但 ~
这个符号在两个操作系统中都表示当前用户的主目录。这使得跨平台的脚本编写更加方便,因为 ~
的含义在大多数类 Unix 系统中是一致的。
2、root
用户的主目录通常是 /root
[root@localhost ~]# pwd
/root
你提到的 [root@localhost ~]# pwd
显示的结果是 /root
,这是因为你当前是以 root
用户身份登录的。在 Linux 系统中,root
用户的主目录通常是 /root
。
解释
-
root
用户:root
是系统的超级用户,拥有最高的权限。root
用户的主目录默认是/root
。
-
普通用户:
- 普通用户的主目录通常位于
/home
目录下。 - 例如,如果用户名是
john
,那么john
的主目录通常是/home/john
。
- 普通用户的主目录通常位于
示例
假设你有两个用户:root
和 john
。
-
root
用户:[root@localhost ~]# pwd /root
-
john
用户:[john@localhost ~]# pwd /home/john
切换用户
如果你想要切换到另一个用户,可以使用 su
或 sudo
命令。
使用 su
命令
[root@localhost ~]# su - john
[john@localhost ~]# pwd
/home/john
使用 sudo
命令
[root@localhost ~]# sudo -u john bash
[john@localhost ~]# pwd
/home/john
验证当前用户
你可以使用 whoami
命令来查看当前登录的用户:
[root@localhost ~]# whoami
root
总结
root
用户的主目录:/root
- 普通用户的主目录:通常在
/home/username
所以,当你看到 [root@localhost ~]# pwd
输出 /root
时,这表明你当前是以 root
用户身份登录的。如果你想切换到其他用户,可以使用 su
或 sudo
命令。