${1#*=} 경로?

${1#*=} 경로?

pluginPath="${1#*=}리눅스에서 경로는 무엇을 의미합니까?

그건 그렇고, 그것은 openfoam의 parafoam 디렉토리에서 왔습니다.\\wsl.localhost\Ubuntu\usr\lib\openfoam\openfoam2306\bin

paraview의 다른 경로로 변경해 보았습니다.

답변1

POSIX 스타일 쉘 스크립트에서 ${1#*=}"이 스크립트 또는 쉘 함수에 대해 지정된 첫 번째 위치 인수 문자열, =문자열 시작 부분부터 가장 왼쪽 문자까지 모든 것을 생략함"을 의미합니다.

따라서 if는 parafoam다음과 같이 시작하는 스크립트입니다.

#!/bin/sh
pluginPath="${1#*=}"

그런 다음 이렇게 호출하면 parafoam foo=/some/path bar baz변수 pluginPath할당은 다음과 같습니다.

pluginPath="/some/path"

즉, 이러한 할당은 pluginPath스크립트나 셸 함수를 호출하는 모든 항목에 의해 값이 지정될 것으로 예상된다는 의미입니다.

관련 정보