Удалить косую черту с конца переменной

автозавершение bash делает/в конце каталога как я могу это исключить?

Спасибо за подсказки.

#!/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

Ответ 1

Использование

target=${1%/}

A ссылка.

Ответ 3

Я думаю, что лучшим решением для путей канонизации является realpath $path или с опцией -m, если он не существует. Это решение автоматически удаляет ненужные косые черты и добавляет pwd

Ответ 4

Будьте осторожны, bash3 добавил perl-подобное регулярное выражение к bash. В руководстве упоминается это, а также официальное руководство в GNU, но не все ссылки.

Что я сделал?

замените "2.19/*" на "2.19"

решение:

VER = "2,19/Foo-бар"

NEWVER = ${VER%/*}