Сценарий оболочки находит файл в каталоге, как перейти в скрипт Python - PullRequest
1 голос
/ 30 мая 2019

У меня есть сценарий оболочки, который просматривает каталог и возвращает самый последний файл CVS;Затем я хочу передать этот файл в сценарий Python.

Я не очень знаком с UNIX, должен ли я использовать аргументы для файлов в моем сценарии оболочки и как мне это сделать?

Это код оболочки:

file = ls -t | $path-n 2 | head -n1 

В питоне:

import pandas as pd
data = pd.read_excel(file, sep='delimiter',skiprows = 3, header=None, names = colnames)

1 Ответ

0 голосов
/ 30 мая 2019

Если ваш файл python называется test.py, он должен выглядеть следующим образом:

import sys
import pandas as pd

data = pd.read_excel(sys.argv[1], sep='delimiter',skiprows = 3, header=None, names = colnames)

Тогда команда будет ./test.py $file в сценарии оболочки.

sys.argv [0] - это имя файла python (ex test.py), а sys.argv [1] - первый аргумент после имени файла.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...