Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么Bash有两种方法来检查符号链接(-h和-L)?_Bash - Fatal编程技术网

为什么Bash有两种方法来检查符号链接(-h和-L)?

为什么Bash有两种方法来检查符号链接(-h和-L)?,bash,Bash,为什么Bash同时提供-h和-L来检查文件是否存在并且是否是符号链接?这两个-h和-L都是必需的。因此,bash必须同时包含这两者才能兼容 但是。。。为什么?这是一个历史性的问题:POSIX的旧版本根本不需要对符号链接进行测试操作,这一限制直到2004年才得到纠正(第6期)。在此之前,不同的UNIX实现以互不兼容的方式实现了这一点;POSIX标准统一了这一差异,要求两者兼而有之 值得注意的是,在现代BSDtest中,-h被记录为传统形式,而-L则是其现代替代形式。发件人: -h文件 如果文件存

为什么Bash同时提供
-h
-L
来检查文件是否存在并且是否是符号链接?

这两个
-h
-L
都是必需的。因此,bash必须同时包含这两者才能兼容

但是。。。为什么?这是一个历史性的问题:POSIX的旧版本根本不需要对符号链接进行测试操作,这一限制直到2004年才得到纠正(第6期)。在此之前,不同的UNIX实现以互不兼容的方式实现了这一点;POSIX标准统一了这一差异,要求两者兼而有之


值得注意的是,在现代BSD
test
中,
-h
被记录为传统形式,而
-L
则是其现代替代形式。发件人:

-h
文件 如果文件存在并且是符号链接,则为True。这个接线员 保留以与的早期版本兼容 这个节目。不要依赖它的存在;使用
-L
相反


所需的
-h
-L
。因此,bash必须同时包含这两者才能兼容

但是。。。为什么?这是一个历史性的问题:POSIX的旧版本根本不需要对符号链接进行测试操作,这一限制直到2004年才得到纠正(第6期)。在此之前,不同的UNIX实现以互不兼容的方式实现了这一点;POSIX标准统一了这一差异,要求两者兼而有之


值得注意的是,在现代BSD
test
中,
-h
被记录为传统形式,而
-L
则是其现代替代形式。发件人:

-h
文件 如果文件存在并且是符号链接,则为True。这个接线员 保留以与的早期版本兼容 这个节目。不要依赖它的存在;使用
-L
相反


顺便说一句,在作为bash问题提问之前,通常值得检查某些东西是否特定于bash。Bash(几乎毫无例外)是posixsh语言的超集,它借鉴了早期ksh的思想,借鉴了伯恩的思想;那里有很多历史,通过历史来检查你好奇的东西是否真实,可以很好地了解事物的来源。顺便说一句,在作为bash问题提问之前,通常值得先检查某些东西是否特定于bash。Bash(几乎毫无例外)是posixsh语言的超集,它借鉴了早期ksh的思想,借鉴了伯恩的思想;那里有很多历史,通过历史来检查你好奇的东西是否真实,可以很好地了解事物的来源。