Bash 스크립트에서 프로그램의 스냅샷 버전 사용

Bash 스크립트에서 프로그램의 스냅샷 버전 사용

내 우분투 20.04 컴퓨터에는 두 가지 버전의 프로그램이 설치되어 있습니다( unison). 하나는 설치를 통한 sudo apt install것이고 다른 하나는 스냅 버전입니다. 이 프로그램은 스냅 버전에서만 사용할 수 있습니다.

Bash 쉘의 명령줄에서 프로그램을 실행하면 제대로 작동합니다(스냅 버전을 사용한다고 가정합니다). Bash 스크립트 내부에서 동일한 명령을 실행하면 프로그램이 실행되지 않습니다. 스냅샷이 아닌 버전을 사용하고 있기 때문인 것 같습니다. 명령은

unison profile -sshargs '-i ~/.ssh/key' -auto

배쉬 스크립트는 다음과 같습니다

#!/bin/bash
unison profile -sshargs '-i ~/.ssh/key' -auto

대화형 셸에서와 마찬가지로 bash 스크립트에서도 동일한 동작을 얻으려면 어떻게 해야 합니까?


세부 사항:

"작동하지 않음"은 스크립트를 실행할 때 다음 오류 메시지가 표시된다는 의미입니다.

치명적인 오류: 서버에서 예기치 않은 헤더를 받았습니다. 'Unison 2.48\n'이 필요했지만 'Unison 2.51 with OCaml >= 4.01.2\n\000\000\000\000\017'을 받았습니다. 'Unison 2.5'와 동일합니다. 다른. 이는 클라이언트와 서버 시스템에 서로 다른 버전의 Unison이 설치되어 있거나, 연결이 실패하고 누군가 오류 메시지를 인쇄하고 있거나, Unison을 시작하기 전에 원격 로그인 쉘이 무언가를 인쇄하고 있기 때문에 발생할 수 있습니다.

관련 정보