Linux 将文件读入变量,然后用转义字符替换控制字符

Linux 将文件读入变量,然后用转义字符替换控制字符,linux,bash,shell,Linux,Bash,Shell,我有一个像下面这样的文件 # cat test Start tab enter 或者使用控制字符 # cat -A test Start^Itab$ enter$ 我想将文件转换成如下所示的变量 file = "Start\ttab\nenter" echo -e $file Start tab enter 我们如何使用bash脚本(不使用任何编程语言,如perl或python)实现这一点 请注意:这里给定的文件只是示例,我确实有非常大的文件,带有复杂的控制字符,因此类

我有一个像下面这样的文件

 # cat test
Start   tab
enter 
或者使用控制字符

# cat -A test
Start^Itab$
enter$
我想将文件转换成如下所示的变量

file = "Start\ttab\nenter"  

echo -e $file
Start   tab
enter

我们如何使用bash脚本(不使用任何编程语言,如perl或python)实现这一点


请注意:这里给定的文件只是示例,我确实有非常大的文件,带有复杂的控制字符,因此类似于“sed”的方法在这里不起作用。

echo-e您想要一个脚本,它接收一个文本文件,并生成第二个脚本(运行时)复制原始文件?这个问题太宽泛了。
mapfile data < /path/to/file
printf '%s' "${data[@]}"