0

我正在尝试将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 
4

1 回答 1

1
  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
于 2019-11-07T19:55:42.553 回答