zoukankan      html  css  js  c++  java
  • Linux命令之basename 命令

     

     
     

    用途

    返回一个字符串参数的基本文件名称。

    语法

    basename String [ Suffix ]

    描述

    basename 命令读取 String 参数,删除以 /(斜杠) 结尾的前缀以及任何指定的 Suffix 参数,并将剩余的基本文件名称写至标准输出。basename 命令应用以下创建基本文件名称的规则:

    1. 如果 String 参数是 //(双斜杠) 或如果 String 参数包含的都是斜杠字符,则将字符串更改为单个 /(斜杠)。跳过步骤 2  4
    2. 从指定字符串除去任何拖尾的 / 字符。
    3. 如果在 String 参数中剩余任何 / 字符,则除去字符串的前缀直到(包含)最后一个 / 字符。
    4. 如果指定 Suffix 参数,且它和字符串中的剩余的字符相同,则不修改此字符串。例如,输入:
    K > basename /u/dee/desktop/cns.boo cns.boo

    结果是:

    cns.boo

    如果指定 Suffix 参数,且它和字符串中所有字符都不相同,但和字符串的后缀相同,则除去指定后缀。例如,输入:

    K > basename /u/dee/desktop/cns.boo .boo

    结果是:

    cns

    不能在字符串中查找到指定的后缀不作为错误处理。

    basename 和 dirname命令通常用于 shell 脚本中的命令替换来指定和指定的输入文件名称有所差异的输出文件名称。

    退出状态

    该命令返回以下退出值:

    0                成功完成

    0  发生错误

    示例

    1. 要显示一个 shell 变量的基本名称,请输入:
    basename $WORKFILE

    此命令显示指定给 shell 变量 WORKFILE 的值的基本名称。如果 WORKFILE 变量的值是/home/jim/program.c 文件,则此命令显示 program.c

    1. 要构造一个和另一个文件名称相同(除了后缀)的文件名称,请输入:
    OFILE=`basename $1 .c`.o

    此命令指定给 OFILE 文件第一个位置上的参数($1)的值,但它的 .c 后缀更改至 .o。如果 $1是 /home/jim/program.c 文件,则 OFILE 成为 program.o。因为 program.o 仅是一个基本文件名称,它标识在当前目录中的文件。

    注:`(重音符号)指定命令替换。

  • 相关阅读:
    【二分匹配】【匈牙利算法即由增广路求最大匹配模板】
    【字符串入门专题1】【hdu4763】【未ac题】【扩展kmp exkmp】
    【字符串入门专题1】hdu3613 【一个悲伤的exkmp】
    【如何用XAMPP搭建Wordpress建站环境】
    面向过程要素
    当前阶段--可确定--完善版--学习结构--2016.09.10
    什么时候用工厂模式-----转载
    《EffectiveJava中文版》
    《ARM LINUX内核源码解析》
    《深入分析javaweb技术内幕》
  • 原文地址:https://www.cnblogs.com/yi-meng/p/3212570.html
Copyright © 2011-2022 走看看