Cygwin bash shell中的String Concatenation错误

时间:2013-03-18 18:49:07

标签: cygwin concatenation

我在BASH中连接两个字符串时遇到问题(我正在使用Cygwin)

当我在cygwin窗口中一步一步地进行操作时,它可以正常工作。

即明确定义dt = 2012-12-31和c = .txt,然后在filename = $ {dt} $ {c}中连接。

当我通过我的脚本运行它时似乎不起作用,这些变量是通过剪切和分配文件内容中的值来定义的。

虽然为变量分配了与上面相同的值,但在这种情况下的连接不起作用。

而不是2012-12-31.txt我得到.txt-12-31作为结果。

代码是:

for x in {0..11}
do
    IFS=$'\n'
    filename=date_list.txt
    file=($(<"$filename"))
    IFS=$'\t\n'
    dt=${file[$x]}
    echo $dt

for y in {0..85}
do  
    IFS=$'\n'
    filename=SQL_Mnemonics.txt
    file=($(<"$filename"))
    IFS=$'\t\n'
    Mn=${file[$y]}

        for k in {3..502}
        do
            IFS=$'\n'
            c=.txt
            filename=${dt}${c}
            file=($(<"$filename"))
            IFS=$'\t\n'
            echo ${file[$k]} > temp_file.txt
            cusip=`cut -c11-19 temp_file.txt`
            result=$(sh ctest.sh $Mn, $dt, $cusip)
            echo "$result" > tmp1.txt
            t1=`cut -c18-40 tmp1.txt`
            echo $t1 | sed 's/[[:space:]]//g' > temp_file.txt
            cat tst.txt | sed 's/-----//g' >> ForFame/${Mn}.${dt}.txt
        done
done
done

0 个答案:

没有答案