linux下的格式问题,与读取不了最后一行

转载 2013年12月03日 19:43:59


vim中显示windows或者dos的换行符^M

http://blog.chinaunix.net/uid-14214482-id-3220695.html

 

linux下,如果需要在vim中查看^M,需要使用如下命令:e ++ff=unix %

 

有时候,我们在 Linux 中打开曾在 Win 中编辑过的文件时,会在行尾看到 ^M字符。虽然,这并不影响什么,但心里面还是有点不痛快。如果想要删除这些 ^M 字符,可以使用 Vim 来轻松搞定它。

Vim 的命令模式中输入 :%s/^M$//g 后,回车即会自动删除该文件中的所有 ^M 字符。

^M 注意要用 Ctrl + V Ctrl + M 来输入

Linuxwindows下回车换行格式转换回车换行结尾转换  

http://rocolex.blog.163.com/blog/static/6844641020115241629669/

 

一、windows的文件到linux下的转换方法:

1. sed命令替换

sed -e 's/^M//g' original.txt > target.txt (注意^M Linux/Unix下是这样输入的:先按CTRL+v,接着按CTRL+SHIFT+m,呵呵~~ 其实俺主要就是为了记录一下这个输入方法)

2. vi中替换

:%s/^M//g
3.sed
命令替换
sed -e 's/.$//' dos.txt > linux.txt

二、Linux文本传到windows系统,转换方法:
sed -e 's/$/\r/' 1pnet.txt >dos.txt

 

 

while read的关于读取最后一行的问题

 

http://bbs.csdn.net/topics/390108418

 

windows使用\r\n作为行结尾,而unix使用\n作为行结尾

使用notepad编辑的文件,如果最后一行没有回车,采用二进制方式上传到unix后,因为最后一行没有\n,会被认为是不完整的文件

循环读到最后一行后,认为达到文件结尾,那个read SERVER会返回假,循环结束。


1
、最好使用dos2unix命令转换为unix格式
2
、实在不行,只能在while循环之后,再添加一个额外处理

 

[shell] while read line最后一行读不出  

http://wangjunle23.blog.163.com/blog/static/11783817120135254317901/

 

如果存在一个文本${file},使用while read line去读取时发现,最后一行无法读出:

 

        while read line
        do
            echo "$line 1 n"
        done < ${file}

 

如何解决这种情况呢,可以考虑以下的方法:

    DONE=false
    until $DONE 

    do read || DONE=true
        echo "$REPLY 1 n"
    done < ${files}

 

相关文章推荐

sh执行shell脚本出现语法错误

今天调试一个脚本,因为我都是用./的方式直接运行脚本的,所以没有发现任何问题,但是当我用如下命令打印调试信息的时候就会发现各种问题:sh -x sample.sh 下面给出典型的sample.sh ...
  • w_xue
  • w_xue
  • 2014-02-21 15:36
  • 1937

【C++】C++ 读取文件最后一行产生的问题

之前写了一个读取文件的代码,发现每次读取的行数都比实际多一行。文档是一行行的数据,最后确实有一个空行,这是因为输出这个文档的时候,每一行都有一个换行符,所以必然导致最后一行有一个空行。这是一个非常普遍...

scrollview嵌套listview最后一行显示不全的问题

记录自己的每一个问题,也好让自己记住 实际上不光是ListView,其他继承自AbsListView的类也适用,包括ExpandableListView、GridView等等,都会有这样的问题 ...

利用C++读取文本最后一行信息

当文本数据太大的时候,如果想要获取的信息在最后一行,就需要从最后一行获取信息。下面是一个实现该任务的代码。例子文本中保存的数据如下,先需要获取, 最后一行第一个数字3,因为其记录了文本总共的行数信息。...

python读取txt文件最后一行(文件大+文件小)

txt文件小#coding:utf-8 ''' fname为所读xx.txt文件 输出为:文件第一行和最后一行 '''fname = 'test.txt' with open(fname, 'r') ...

JAVA如何实现读取文件最后一行记录,在文件的结尾追加记录

RandomAccessFile rf = null; System.out.println(new Date().getTime()); try { rf = new RandomAccessFi...
  • ifm444
  • ifm444
  • 2011-05-16 14:39
  • 11290

高效读取文件最后一行

package xfd.da.test; import java.io.File; import java.io.FileNotFoundException; import java.io....

fgets()重复读取最后一行的分析及解决方法

使用 fgets() 读取一个文本文件的时候,如果

JAVA socket编程(使用BufferedReader的readline()函数读取最后一行等待20S)

作为Java菜鸟,虽说Java不熟,不过在这个模块

Gentoo Linux下读写NTFS格式分区(ntfs-3g解决NTFS只读不可写的问题)

原创作品,转载请标明出处http://blog.csdn.net/yming0221/article/details/7222486主机:Gentoo Linux with linux kernel ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)