Ответ 1
Использование
target=${1%/}
A ссылка.
автозавершение 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
Использование
target=${1%/}
A ссылка.
Используйте target=${1%/}
Подробнее см. замену параметров этого руководства bash для сценариев.
Я думаю, что лучшим решением для путей канонизации является realpath $path
или с опцией -m
, если он не существует.
Это решение автоматически удаляет ненужные косые черты и добавляет pwd
Будьте осторожны, bash3 добавил perl-подобное регулярное выражение к bash. В руководстве упоминается это, а также официальное руководство в GNU, но не все ссылки.
Что я сделал?
замените "2.19/*" на "2.19"
решение:
VER = "2,19/Foo-бар"
NEWVER = ${VER%/*}