从variables末尾删除斜杠

bash自动完成make /在一个目录的末尾如何我可以去掉这个?

感谢提示。

#!/bin/sh target=$1 function backup(){ date=`date "+%y%m%d_%H%M%S"` PWD=`pwd` path=$PWD/$target tar czf /tmp/$date$target.tar.gz $path } backup 

使用

 target=${1%/} 

一个参考 。

使用target=${1%/}

看到这更多的参数替代这个bash脚本指南 。

我认为更好的解决path的方法是realpath $path或者-m选项,如果它不存在的话。 这个解决scheme自动删除不必要的斜杠并添加pwd

要小心,bash3添加了perl-类似的正则expression式。 所提到的指南涵盖了这个以及GNU的官方指南 ,但不是所有的参考文献都这么做。

我做了什么?

将“2.19 / *”replace为“2.19”

解:

VER = “2.19 /富杆”

NEWVER = $ {VER%/ *}