Оболочка UNIX Устанавливает переменную в сценарии оболочки UNIX для пути к каталогу плюс имя файла - PullRequest
0 голосов
/ 07 ноября 2019

Я пытаюсь установить переменную в сценарии UNIX Shell для пути к каталогу плюс имя файла с отметкой даты. В командной строке это приводит к результатам. Когда я echo FILE_DATE возвращаюсь к экрану, в скрипте выдается имя $FILE_DATE, а не результат. Я думал, что это будет легко. Я, видимо, упускаю что-то простое.

Мой код:

FILE_DATE=echo ls -1 /opt/ftp/receive/SSA_SSI/SSA_Accounts_*.csv | grep -oP '[\d]+[\d]+[\d]+'

echo $FILE_DATE 

1 Ответ

1 голос
/ 07 ноября 2019
  1. В вашей команде отсутствуют скобки.
  2. Символ $ также отсутствует.
  3. Команда echo не требуется.

Рабочий скрипт:

FILE_DATE=$(ls -1 /opt/ftp/receive/SSA_SSI/SSA_Accounts_*.csv | grep -oP '[\d]+[\d]+[\d]+')

echo ${FILE_DATE}

Я создал небольшую презентацию, как это работает:

>>> ls
7093966790966902785_n.jpg  first_test.py  second_test.py  test.py
>>> MY_DATA=$(ls -1 *.py | grep "second")
>>> echo ${MY_DATA}
second_test.py
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...