天天看点

shell 中 basename 的简单使用

  在shell 脚本中$0 通常用于显示脚本的名称,在不使用basename 的时候会显示脚本的路径名称

 例如

1

2

3

4

5

<code> </code><code>cat</code> <code>test5.sh </code>

<code>#!/bin/bash </code>

<code># testing the $0 parameter </code>

<code>echo</code> <code>the zero parameter is </code><code>set</code> <code>to:$0</code>

 执行脚本

bash /root/shell/test5.sh 

the zero parameter is set to:/root/shell/test5.sh ##显示了脚本的路径

添加basename 后 

<code>name=$(</code><code>basename</code> <code>$0 )</code>

<code>echo</code> <code>the zero parameter is </code><code>set</code> <code>to:$name</code>

执行脚本 

 bash /root/shell/test5b.sh 

the zero parameter is set to:test5b.sh  ##直接显示脚本名称

简单实例,根据脚本的不同名称执行不同的功能,当脚本名称是addem,执行加法、是multem的时候执行乘法

脚本如下

6

7

8

9

10

11

12

13

<code>#!/bin/bash</code>

<code>#Testing a multi-function script </code>

<code>name=$(</code><code>basename</code> <code>$0)</code>

<code>#</code>

<code>if</code> <code>[ $name = </code><code>"addem"</code> <code>]</code>

<code>then</code> 

<code>  </code><code>total=$[ $1 + $2 ]</code>

<code>elif</code> <code>[ $name = </code><code>"multem"</code> <code>]</code>

<code>  </code><code>total=$[ $1 * $2 ]</code>

<code>fi</code>

<code>echo</code> <code>The calculated value is $total</code>

cp test6.sh addem 

cp test6.sh multem

执行addem 脚本

./addem 25 3

The calculated value is 28

执行multem 脚本

[root@VM_71_179_centos shell]# ./multem 3 5

The calculated value is 15

本文转自 水滴石川1 51CTO博客,原文链接:http://blog.51cto.com/sdsca/1903822,如需转载请自行联系原作者