원격 홈에서 bash를 올바르게 실행할 수 있습니다. TCL을 원격 호스트에 설치했지만 TCL을 실행할 수 없습니다. 이 스크립트를 실행하면 오류가 발생하지 않습니다. 당신의 [open $filename "w"]
가 (다른 곳에서와 유사한 변경) open "w"]
으로 변경됩니다, 그래서 당신은 당신의 외부 스크립트에 내 보낸 filename
변수가없는 한Bash 스크립트가 tclsh를 실행하지 않습니다
#!/bin/bash
ssh [email protected] << EOF
echo "Connected";
echo "CD TO ~";
cd ~;
echo "Create text file";
script='
set data "This is some test data.\n"
set filename "test.txt"
set fileId [open $filename "w"]
puts -nonewline $fileId $data
close $fileId
exit 0'
tclsh << HERE
$script
echo "Exit";
exit
EOF
btw 또한 '여기'가 없습니다. 아마도 그것은'echo "Exit"앞에 있어야 할 것입니다. 여러분이 heredoc을 herestring에 해당하는 POSIX-sh로 사용하고 있기 때문에 인용하지 않으려 고하는 것입니다. –
Thanks @CharlesDuffy 이제 모든 것이 잘되고 있습니다. D – Ryahn