Linux 명령을 사용하여 bash 확장

Linux 명령을 사용하여 bash 확장

명령에 정보를 전달하기 위해 스크립트에서 위치 매개변수를 사용하고 싶지만 작동하지 않습니다. 매개변수 확장을 통해 이것이 가능합니까?

lvresize -r -L 4G /dev/mapper/vol-opt

lvresize -r -L "$($2)G" "$opt"

$2(의 값은 4)

답변1

두 번째 위치 인수가 4다음과 같이 전달되기를 원할 것입니다.

lvresize -r -L "$2G" "$opt"

하지만 청소용으로만 교정기를 사용하는 것이 좋습니다.

lvresize -r -L "${2}G" "$opt"

어떻게 설정해야 하는지는 확실하지 않지만 opt, 이미 설정하신 것으로 가정하겠습니다.


글을 쓰면 $($2)수행이 된다명령 대체4그래서 존재하지 않을 수도 있는 이름의 명령을 실행하려고 합니다 .


교정장치는 일반적으로필수의이 경우 다른 유형의 매개변수에 대해서는 뒤에 오는 인접한 텍스트가 변수 이름의 일부로 간주되는 것을 방지하기 때문입니다.

예를 들어:

$ var=good
$ varg=bad
$ echo "$varg"
bad
$ echo "${var}g"
goodg

관련 정보