2013-03-24 3 views
0

링크 명령을 사용하는 쉘 스크립트를 실행하여 여러 스크립트를 실행할 수 있도록 일반적인 스크립트를 재활용하려고합니다. 하위 디렉토리 내의 스크립트는 공유이라는 병렬 하위 디렉토리에서 공유 스크립트를 호출합니다. 호출하는 스크립트의 내용은 다음 (Allrun 명명 된 호출을 모두와 공유 스크립트)은 다음과 같습니다링크 명령 오류 (링크 : 피연산자 누락 된 후 ...)

이 명령은 하나 실제로 '공유'하위 디렉토리 내에서 주스를 포함하여이 스크립트를 연결하도록되어
link ../share/Allrun 

.

link: missing operand after `../share/Allrun' 
Try `link --help' for more information. 

을 나는 우분투 12.04LTS를 사용하고 있습니다 :

자,이 위의 코드가 실행될 때 내가 무엇을 얻을 수 있습니다. 실행하려고하는 스크립트는 전산 유체 역학 문제의 검증을위한 것입니다. 이것은 다른 조건 하에서 실행되는 스크립트의 근원입니다. 당신이 주요 내 명령을 따르는 경우 "Allrun"스크립트 당신은 어떻게하려고하는 것을 볼 수 있습니다 :

http://www.opencae.jp/svn/OpenFOAM-VandV-SIG/AIJ-PWEAB/trunk/CaseB/

당신에게 대단히 감사합니다 사전에

답변

0

link은 항상 두 개의 인수를 취 기존 파일을, 새 파일을 첫 번째 파일에 대한 링크로 만듭니다. 무엇을 당신이하려는 것은 현재 디렉토리에 Allrun에 하드 링크를 만들 경우, 당신이 원하는 :

link ../share/Allrun Allrun 

가 대상을 생략 할 수 있으며 좀 더 표준 인 대신 ln을 사용하는 것이 좋습니다.

+0

답장을 보내 주셔서 감사합니다. 나는 ** ln **에 대한 호출 스크립트에서 ** link ** 명령을 (다른 것을 변경하지 않고) 단순히 대체하려고 시도했지만 작동하지 않았다. 이것은 ** ln **에서 얻은 오류 메시지입니다 :'ln : 하드 링크를 만들지 못했습니다. './Allrun : File exists' –

+0

아, 그래, 뭔가 다름니다. 이미' Allrun'을 현재 디렉토리에 저장합니다. 어쩌면 이미 성공적으로 거기에 연결되어있을 것입니까? 아니면 이전 설치에서 남은'Allrun' 스크립트가 있습니까? – rra

+0

스크립트 작성 방법은 모두 "Allrun"이라고합니다. SVN (http://www.opencae.jp/svn/OpenFOAM-VandV-SIG/AIJ-PWEAB/trunk/CaseB/)에서 다운로드 한 처녀 버전의 원래 오류 메시지가 나타납니다. 그들이 원치 않는 코드를 남겼을 가능성이 있습니다. 그러나 그들은 또한 "ln"명령이 아닌 "link"명령을 사용하고 있습니다. 이것이 효과가 있었던 어떤 상황이 있습니까? –