我需要读取文本文件的内容,并将内容分配给脚本中可用的变量。我在同一主题上看到了很多问题,但我的脚本不起作用。
export CONTENT_FROM_FILE="/home/me/test.sql"
echo $CONTENT_FROM_FILE
VAR=$(while IFS= read line;do echo "$line";done < "$CONTENT_FROM_FILE")
echo $VAR
这会出现错误“No such File or directory”。所以我做了以下,
VAR=$(while IFS= read line;do echo "$line";done < "/home/me/test.sql")
echo $VAR
在这种情况下,它能够读取文件但echo $ VAR仅打印文件的一部分。
答案 0 :(得分:0)
如果您在bash
,则可以command-substitution
实现相同目标,避免使用cat
或冗余while-loop
#!/bin/bash
myFileContent="$(<myFile)" # Sets "myFileContent" to contents of "myFile".
要查看此操作,请填写以下内容的示例文件: -
$ cat file
Hi This is a test file - First line
Hi This is a test file - Second line
Hi This is a test file - Third line
我正在运行一个脚本来读取此文件并将其打印到stdout
$ cat script.sh
#!/bin/bash
myfileContent="$(<file)"
echo "$myfileContent"
以
运行脚本$ ./script.sh
Hi This is a test file - First line
Hi This is a test file - Second line
Hi This is a test file - Third line
答案 1 :(得分:0)
Simpliesy方式是
VAR =`cat myfile`