수천 개의 파일이 있는 디렉토리가 있고 각 디렉토리의 입력을 복제하지 않고 다른 디렉토리의 동일한 입력 파일을 사용하여 소프트웨어를 여러 번 실행하고 싶습니다. 다음 코드를 사용하여 각 파일 기호 링크에 대한 포인터를 만들었습니다.
ln -s /path/to/bayestraits/*_b.txt /path/to/bayestraits/dependiente_1
디렉토리 구조는 다음과 같습니다
bayestraits
dependiente_1
dependiente_2
dependiente_3
모든 디렉토리에서 다음 코드를 실행하고 싶습니다
for file in *_b.txt; do BayesTraitsV3 cyanomarkers_2.nex $file < Discrete_Dependent.txt ; done
문제는 코드를 실행할 때 출력 파일이 bayestraits 디렉터리, nodependente_1 디렉터리로 리디렉션된다는 것입니다.
답변1
심볼릭 링크 대신 플래그 없이 하드 링크를 만들 수 있습니다 -s
.
ln /path/to/bayestraits/*_b.txt /path/to/bayestraits/dependiente_1
기존 심볼릭 링크를 삭제하지 않고 덮어쓰려면 -f
(force) 플래그를 사용하세요.
ln -f /path/to/bayestraits/*_b.txt /path/to/bayestraits/dependiente_1