• dirname 命令


    dirname 命令
    用途
    将指定路径除了最后以外的部分写到标准输出。
    语法
    dirname Path
    描述
    dirname 命令读取指定路径名保留最后一个“/”(斜杠)及其后面的字符,删除其他部分,并写结果到标准输出。如果最后一个“/”后无字符,dirname 命令使用倒数第二个“/”,并忽略其后的所有字符。dirname 命令在创建路径名的时候遵从以下规则:

    如果 Path 参数为“//”(双斜杠),或者参数 Path 全部由斜杠组成,将其转换为单斜杠“/”。跳过步骤 2 到 7。 
    从指定路径删除尾部的“/”字符。 
    如果参数 Path 中没有剩下的“/”,则将路径转换成  . (点)。跳过步骤 4 到 7。 
    从路径中删除尾部的所有非斜杠字符。 
    如果剩下的路径为“//”(双斜杠),跳到步骤 6。 
    删除路径尾部的斜杠字符。 
    如果剩下的路径为空,则转换成单斜杠“/”。
    例如,输入:

    dirname // 
    结果为 /(斜杠)。输入:

    dirname /a/b/ 
    结果为:/a。输入:

    dirname a 
    结果为 . (点)。输入:

    dirname a/b 
    结果为路径名 a。

    命令 dirname 和 basename 通常在 shell 内部命令替换使用,以指定一个与指定输入文件名略有差异的输出文件名。

    退出状态
    此命令返回以下退出值:

    0 成功完成 
    >0 发生错误。 

    示例
    要构造和另一文件位于相同目录的一个文件名,请输入:
    AOUTFILE=`dirname $TEXTFILE`/a.out
    这将设置 shell 变量 AOUTFILE 作为文件 a.out 的名称,它与 TEXTFILE 位于同一目录。如果 TEXTFILE 是 /home/fran/prog.c,则 dirname $TEXTFILE 的值成了 /home/fran,且 AOUTFILE 变成了 /home/fran/a.out。

    以上是AIX上dirname的man帮助,难道以前的这段代码本身就是一个不可到达的?也就是说dirname的输出不可能是空?

  • 相关阅读:
    Nginx负载均衡
    MySQL主从复制
    笔记
    tomcat工作原理
    Nginx工作原理
    Loj#6183. 看无可看
    [BZOJ 2759] 一个动态树好题
    5255 -- 【FJOI2016】神秘数
    [NOI2015]寿司晚宴
    [CQOI2017]老C的键盘
  • 原文地址:https://www.cnblogs.com/programmer-tlh/p/6069892.html
Copyright © 2020-2023  润新知