我正在使用 Cygwin Terminal 运行 shell 来执行 Windows 7 系统的 shell 脚本。 我正在创建目录,但它的创建名称中带有一个点。
test.sh
#!/bin/bash
echo "Hello World"
temp=$(date '+%d%m%Y')
dirName="Test_$temp"
dirPath=/cygdrive/c/MyFolder/"$dirName"
echo "$dirName"
echo "$dirPath"
mkdir -m 777 $dirPath
在执行
sh test.sh
时,其创建文件夹为Test_26062015
,而期望为Test_26062015
。为什么这3个特殊承租人会来,我该如何纠正它
即使您的脚本文件使用 UTF-8 编码,也会出现 Carriage Return CR 字符 + Line Feed LF 字符。
由于 Cygwin linux 只能识别 Line Feed 字符,因此您的命令将其附加到文件夹名称中,从而在文件夹名称末尾创建点字符。