作为我的脚本的参数,有一些文件路径。这些路径可以是相对路径(或包含~)。但是,对于我编写的函数,我需要绝对路径,但不需要解析它们的符号链接。
是否有任何此功能的函数?
是否有任何此功能的函数?
#!/usr/bin/php <-- or wherever
<?php
{
if($argc!=2)
exit();
$fname=$argv[1];
if(!file_exists($fname))
exit();
echo realpath($fname)."\n";
}
?>
我知道这不是一个非常优雅的解决方案,但它确实有效。
readlink
解析符号链接;但 OP 不希望这样。 - Keith Thompsonecho $(cd some_directory && pwd)
,不解析符号链接,如果some_directory不存在则失败。工作目录不受影响。或者将其赋值给变量MY_PATH=$(cd some_directory && pwd)
。 - qeatzyrealpath -s "./some/dir"
。快速,简单,没有任何函数(如果您的操作系统支持的话,应该会?)就像我的答案所说的那样。 https://dev59.com/Nmw05IYBdhLWcg3wnjPC#64706902 - Raid