반응형
변수 끝에서 문자 제거
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%/}
참고 자료입니다.
사용하다target=${1%/}
자세한 내용은 이 bash 스크립팅가이드의 파라미터 대체를 참조해 주세요.
경로를 구체화하는 더 좋은 해결책은realpath $path
또는 을 사용하여-m
옵션(존재하지 않는 경우)을 선택합니다.이 솔루션은 자동으로 불필요한 슬래시를 제거하고 pwd를 추가합니다.
주의: bash3는 bash에 perl-similar regex를 추가하였습니다.이 가이드에서는 GNU의 공식 가이드뿐만 아니라 이 가이드도 다루고 있습니다만, 모든 레퍼런스가 이에 대응하고 있는 것은 아닙니다.
제가 어떻게 했나요?
대체물2.19/*
되려고2.19
.
솔루션
VER="2.19/foo-bar"
NEWVER=${VER%/*}
언급URL : https://stackoverflow.com/questions/1848415/remove-a-character-from-the-end-of-a-variable
반응형
'programing' 카테고리의 다른 글
XAML의 #지역 (0) | 2023.04.20 |
---|---|
BAT 파일을 항상 관리 모드로 실행하도록 코드화하려면 어떻게 해야 합니까? (0) | 2023.04.20 |
프리프로세서 매크로가 없는 경우 Xcode 프로젝트에서 프로젝트 수준에서 실용적인 스킴 고유의 플래그를 정의하는 방법이 있습니까? (0) | 2023.04.20 |
그림.add_subplot(111)에서 인수는 무엇을 의미합니까? (0) | 2023.04.20 |
WPF 사용자 제어 설계 시간 크기 (0) | 2023.04.15 |