Bash 腳本語法

Bash 腳本語法

我想創建一個 .sh 腳本,它將

  1. 執行一個名為 的 python 文件match_scraper.py
  2. 更新 psql 資料庫,如圖所示,
  3. 調用 scrapy 蜘蛛來執行。

當我建立 .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

首先你需要確保你的每一行/部分腳本在 shell 中工作(在腳本之外)。我不知道你的是否會,所以你必須自己檢查一下。

並執行一個您需要的腳本python位於腳本路徑之前

也:

  • ~是主目錄的捷徑目前的使用者
  • ~asdf是主目錄的捷徑阿斯達夫使用者
  • ~/DocumentsDocuments是主目錄中資料夾的路徑目前的使用者
  • ~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當您在命令列上運行它時,它實際上有效嗎?

我不知道但我懷疑您需要向它傳遞一些命令列參數才能讓它運行該update...命令?

相關內容