将字符串放入带有变量的bash脚本的文件中

时间:2016-10-25 14:20:42

标签: bash

我需要创建一个日志文件,但不可能使用变量

我用变量创建一个脚本,创建文件,将信息放入我的变量,然后在最后,我想将变量值放入一个文件中并在控制台中显示它。

#!/bin/ksh

log=''

touch monLog.log

log="$log ===================================\n"
log="$log ================LOG================\n"
log="$log ===================================\n"

[...]

log="$log Division $division : aucun fichier pour la division\n"
log="$log Division $division inexistante\n" 

echo "$log" >> monLog.log
echo "$log"
echo "test fini"

这个脚本给我下一个结果:

===================================
================LOG================
===================================

Division MADIVISION : aucun fichier pour la division
Division MADIVISION2 inexistante 

test fini

但是,cat monLog.log是空的......

变量的回显告诉我好的日志,但>>什么都没有放入文件 请帮帮我

1 个答案:

答案 0 :(得分:0)

这可能是复制/粘贴错误吗?您可以在目录中ls -l查看是否有另一个包含所需内容的文件?例如,如果您在monLog.log^M行上意外粘贴了>>,其中^M是文字回车符,则您最终可能会得到一个包含您{的内容的文件。 {1}}变量。

您可以执行log脚本来检查这样的错误。错误的cat -v会显示^M,但不显示cat -v