从服务器路径读取文件 - bash

从服务器路径读取文件 - bash

我将文件完整路径传递/tmp/user/abc.txt给 shell 脚本,我想在其中读取文件并将其内容存储在变量中。

现在我正在使用以下内容:

export SUBJECT=`echo ${1}`

SUBJECT_1=`cat $SUBJECT`

这不是打印任何东西。此外,该文件的内容也将包含一些日语字符。

答案1

您的代码中有一些错误:

  1. 您这里缺少反引号SUBJECT_1=cat $SUBJECT`。
  2. export SUBJECT=echo ${1}是一个错误的陈述。它应该是export SUBJECT="${1}"
  3. 反引号在子 shell 中执行其中的代码,因此它不会打印文件的内容。如果你想打印它,你必须添加这一行:echo "${SUBJECT_1}"

一旦你修复了这些问题,代码就可以工作了,但这里有一些你应该考虑的提示:

  1. $(code)如果您想在子 shell 中执行代码而不是使用反引号,则应该使用,您可以在这个所以线程
  2. 下次当你被 shell 代码困住时尝试一下首先,它具有强大的 shell 代码调试功能,并且您可以找到它的命令行版本。
  3. 始终在变量上使用双引号,这样可以防止变量拆分。你可以阅读相关内容这里

相关内容