众所周知,Windows和Linux的文件换行回车格式不同,Windows下换行格式是\r\n(回车+换行),Linux下换行格式为\n(只是换行),因此,其中一个操作系统的文本文件若需要在另外一个中显示,需要转换。在Linux系统中,提供了两个命令进行这种转换:unix2dos,dos2unix。
今天上午,翻阅以前的笔记(注意,是linux下的txt文件),为了在win7下呈现,不得已,需要装换,但笔记name格式实在不统一,譬如mysql01.txt, mysql_01.txt,mysql-p1,本想一个一个的进行转换,但工作量实在巨大,“所有程序员都是理想主义者”,作为一个理想主义者,在有能力的情况下,要学会偷懒。这个世界重要的不是勤奋做事,而是用脑做事。因此,花费了点时间,写了个脚本,最后不费吹灰之力将Linux下的txt文件批量转为为windows下的txt文件。分享如下:
#!/bin/bash
read -p "please input the folder name:" folder
cd /mnt/hello/$folder
read -p "Please input the number:" number
mkdir -p $folder
for ((i=;i<=$number;i++))
do
if [ $i -le ];then
unix2dos -n $folder''$i.txt $folder/$folder''$i.txt
else
unix2dos -n $folder$i.txt $folder/$folder$i.txt
fi
done
ps:这个脚本通用性会较弱一点,各位童鞋可以根据自己的目标具体调整这个脚本。
后续:其实也不用这么麻烦的,可以下载一个Linux下大名鼎鼎的文件编辑器-gedit for windows,其自动识别Linux下的文本文件。