>

colab에서 스크립트 쉘을 실행하고 싶습니다. "!" 또한 "%% shell"을 시도했습니다

  • 답변 # 1

    쉘 안에 있다면, 그냥 .sh 를 부르지 않습니다  file --- 자신의 터미널에서 같은 오류가 발생합니다. 쉘은 현재 디렉토리에서 쉘 명령을 찾지 않으므로 스크립트에 경로 컨텍스트를 추가하여 실제 실행 가능한 프로그램임을 쉘에 알려 주어야합니다. 일반적으로 스크립트 앞에 점을 추가하여 사용하십시오. >

    $ . testAllLatin.sh
    
    

    대신

    $ testAllLatin.sh
    
    

    체크에서 명령 앞에있는 점의 의미는 무엇입니까? 유닉스 스택 교환 사이트. 최고 답변은 다음과 같습니다.

    와이즈 비즈 와이즈 비즈  자체는 쉘 내장 명령입니다. 그리고

    A dot in that context means to "source" the contents of that file into the current shell. With  도트 연산자는 동의어입니다.

    <시간>

    Colab과 Notebook이있는 한 source  magic은 셀에서 명령으로 전체 셀을 실행합니다. 따라서 셀에서 다음을 사용할 수 있어야합니다.

    source
    
    

    뱅은 대신 쉘에서 한 줄만 실행하므로 원하는 경우 파이썬을 산재시킬 수 있습니다. 셀에서 다음과 같은 작업을 수행 할 수 있습니다.

    %%shell
    
    

    어쨌든 쉘 셀을 분리하는 것이 가장 좋습니다.

  • 답변 # 2

    %%shell . path/to/testAllLatin.sh  또는 print('this is Python stuff', 5+10) !. path/to/testAllLatin.sh print('is it all latin?')  작동해야합니다. 쉘 스크립트가 현재 작업 디렉토리에없는 것 같습니다.

    %%shell 를 실행하여 현재 디렉토리의 내용을 확인할 수 있습니다

    다음은 쉘 스크립트를 실행하는 완전한 예입니다. https://colab.research.google.com/drive/1i5lHPcsmcgeoFEGg0Dfwjhblsm2iMExP

    !

관련 자료

  • 이전 HTML/CSS 입력 유형 ="버튼"에 이미지 아이콘을 추가하는 방법은 무엇입니까?
  • 다음 amazon web services - EC2 인스턴스의 DiskReadBytes 지표와 EBS의 VolumeReadBytes 지표의 차이점은 무엇입니까?