내부 변수를 사용하여 변수 초기화

내부 변수를 사용하여 변수 초기화

ksh에서 어떻게 작동하게 합니까?

variable1="$(strings /.sh_history | grep '^\user' | tail -1 | cut -d' ' -f2)"
variable2="$(command ${variable1})"

기본적으로 변수1을 문자열로 사용하여 변수를 선언하는 명령과 함께 사용하고 싶습니다.

업데이트: 이 문제는 실제로 내 구문과 관련이 없습니다. 텍스트의 서식이 지정되었기 때문에 오류가 발생합니다. 텍스트 수정자를 컷의 구분 기호로 사용하여 데이터를 성공적으로 추출할 수 있었습니다. 나는 스크립트를 더 깔끔하게 만들기 위해 제안된 두 가지 솔루션을 모두 사용했습니다.

답변1

쉘 코드를 저장하려면 다음을 사용하십시오.기능:

function1() { strings /.sh_history | grep "$@"; }
variable1=$(function1 foo)

답변2

사용 eval:

variable1='strings /.sh_history | grep'
variable2=$(eval "$variable1 foo")

관련 정보