나는 .sh 스크립트를 만들고 싶습니다.
- 라는 Python 파일을 실행합니다
match_scraper.py
. - 표시된 대로 psql db를 업데이트합니다.
- 실행하려면 괴상한 거미를 불러야 합니다.
.sh 스크립트를 생성할 때 해당 명령을 올바르게 호출하려면 어떻게 해야 합니까? 이것이 내가 생각해낸 것입니다:
#!/bin/bash
~Documents/dota2/dotaapi2/ python match_scraper.py
psql dota2apidb
update games set online=1 where online is null;
~Documents/dota2/gosugamers/gosugamers/spiders/ scrapy crawl dota
답변1
먼저 각 라인/부분을 확인해야 합니다.세게 때리다스크립트는 쉘(스크립트 외부)에서 작동합니다. 귀하의 것인지 여부는 알 수 없으므로 직접 확인해야 합니다.
그리고 실행하려면파이썬python
스크립트 경로 앞에 필요한 스크립트
또한:
~
은(는) 홈 디렉토리에 대한 바로가기입니다.현재의사용자~asdf
은(는) 홈 디렉토리에 대한 바로가기입니다.asdf사용자~/Documents
Documents
은(는) 홈 디렉터리에 있는 폴더 의 경로입니다 .현재의사용자~Documents
의 홈 디렉토리를 찾고 있습니다.예배 규칙서Directory라는 사용자가 없으면 유효하지 않은 사용자
@muru가 지적했듯이 아마도 ~/Documents를 의미했을 것입니다. 따라서 Bash 스크립트는 아마도 다음과 같을 것입니다.
#!/bin/bash
python ~/Documents/dota2/dotaapi2/match_scraper.py
psql dota2apidb
update games set online=1 where online is null;
python ~/Documents/dota2/gosugamers/gosugamers/spiders/scrapy crawl dota
다시 말하지만, 각 줄이 작동하는지 전혀 모르기 때문에 이것이 작동할지 모르겠습니다. 예를 들어 python ~/Documents/dota2/gosugamers/gosugamers/spiders/scrapy crawl dota
명령줄에서 실행하면 실제로 작동합니까?
그리고 나는 모른다psql하지만 해당 명령을 실행하려면 명령줄 매개변수를 전달해야 할 것 같은데요 update...
?