Bash
bash:URL:找不到命令
我在 bash 中不斷收到以下錯誤(使用 Windows):
$ URL = "https://nyc-tlc.s3.amazonaws.com/trip+data/yellow_tripdata_2022-01.parquet" bash: URL: command not found
我試圖在 bash 中執行的完整命令是:
URL = "https://nyc-tlc.s3.amazonaws.com/trip+data/yellow_tripdata_2022-01.parquet" python ingest_data.py \ --user=root \ --password=root \ --host=localhost \ --port=5432 \ --db=ny_taxi \ --table_name=yellow_taxi_trips \ --url=${URL}
執行完整的命令會執行 ingest_data.py 文件,但不會發生下載(我認為是因為這個
URL: command not found
錯誤。如果我執行 ingest_data.py 則什麼也不會發生 - 類似於執行上面的完整命令。
使用 URL 的 ingest_data.py 文件的“重要”部分是
os.system(f"wget {url} -0 {flatfile_parquet}")
:def main(params): user = params.user password = params.password host = params.host port = params.port db = params.db table_name = params.table_name url = params.url flatfile_parquet = 'output.parquet' # download the parquet file os.system(f"wget {url} -0 {flatfile_parquet}") # connect to server engine = create_engine(f'postgresql://{user}:{password}@{host}:{port}/{db}')
我一直在尋找說要使用 curl 但我不想在 bash 中下載文件的執行緒,我想將 url 儲存在一個變數中,然後在
ingest_data.py
文件中使用它。任何建議表示讚賞,我是 bash 的菜鳥
您的第一行有語法錯誤。您不能在“=”周圍留空格,否則 BASH 將嘗試將第一個單詞作為命令執行。考慮:
$ a = "xx" bash: a: command not found $ echo = "xx" = xx $ a="xx" $ echo "$a" xx
你應該使用:
$ URL="https://nyc-tlc.s3.amazonaws.com/trip+data/yellow_tripdata_2022-01.parquet"