bash:URL:找不到命令

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 那么什么也不会发生 - 类似于运行上面的完整命令。

ingest_data.py 文件中使用 URL 的“重要”部分是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 有点菜鸟

答案1

您的第一行有语法错误。 “=”周围不能留有空格,否则 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"

相关内容