相关疑难解决方法(0)

在DOS中将DOS行结尾转换为Linux行结尾

如果我打开我在Windows中创建的文件,则所有行都以^M.
如何一次删除这些字符?

linux vim dos2unix editor file

688
推荐指数
16
解决办法
52万
查看次数

^ M字符在Vim中意味着什么?

我一直^M在我的vimrc中获得角色,这打破了我的配置.

unix vim

473
推荐指数
10
解决办法
28万
查看次数

为什么\ raim的换行?

问题如何在Vim中替换换行符?.替换新行的文本时必须使用\ r,如下所示

:%s/%/\r/g
Run Code Online (Sandbox Code Playgroud)

但是当替换字符的行尾和换行符时,您可以这样做:

:%s/\n/%/g 
Run Code Online (Sandbox Code Playgroud)

手册的哪一部分记录了这些行为,以及它们背后的原因是什么?

vim

248
推荐指数
5
解决办法
5万
查看次数

^在vim中每一行的末尾

当我使用vim和其他编辑器编辑源文件有时在行的末尾时,我会在每行的末尾得到这些^ M个字符.我认为它与在Windows中编辑文件然后在linux中有关.如何自动删除所有这些?

linux windows vim

128
推荐指数
5
解决办法
8万
查看次数

如何在Mac OS X上使用GNU sed

在Mac OS 10.10.3下,我通过输入以下命令安装了gnu-sed:

brew install gnu-sed --default-names
Run Code Online (Sandbox Code Playgroud)

当我再次输入时,我收到消息:

已经安装了gnu-sed-4.2.2

但是,即使重新启动系统并重新启动终端,我仍然无法使用sed的GNU版本.例如:

echo a | sed ’s_A_X_i’
Run Code Online (Sandbox Code Playgroud)

返回:替换命令'i'中的坏标志

我该怎么做才能让GNU版本正常工作?以下是$ PATH变量中的路径.

/Users/WN/-myUnix
/opt/local/bin
/opt/local/sbin
/usr/bin
/bin
/usr/sbin
/sbin
/usr/local/bin
/Applications/calibre.app/Contents/MacOS
/opt/ImageMagick/bin
/usr/texbin 
Run Code Online (Sandbox Code Playgroud)

如果我的问题看起来很明显,我很抱歉,但我自己学习shell脚本,并且还不太了解UNIX程序的安装方式.任何帮助使用GNU兼容命令(在这种情况下sed,但很快我也需要其他人)在我的Mac上不会造成损害或不必要的混乱将非常感激.

macos bash homebrew gnu sed

84
推荐指数
5
解决办法
6万
查看次数

即使文件模式明确是DOS,gVim也会显示回车符(^ M)

我在Windows上使用gVim.我的代码^M在行尾显示字符.我:set ff=dos以前没有用.^M现有行的字符仍然存在,但不会显示我输入的换行符.我已将模式切换为mac(显示^J字符)和unix(也显示^M字符)并返回dos.有没有人见过这个?

vim line-endings carriage-return

77
推荐指数
5
解决办法
6万
查看次数

Eclipse中的自动EOL转换

需要在Eclipse工作区的所有资源中保持EOL格式一致.

我知道Eclipse首选项为新创建的文件设置了新的线条样式,但我希望自动转换现有文件.有一些设置/插件吗?

我只想设置一次,并确保所有行结尾的格式相同.

eclipse line-endings

42
推荐指数
2
解决办法
3万
查看次数

从csv文件中删除^ M.

当我尝试从csv中删除^ M时,我遇到了问题

当我输入vim或vi file.csv时,我得到了

A, TK,2015-04-06,14.4^M,14.7,10.0,0.0,54.0^M,13.3^M,135.0^M,33.8
B, NV,2015-04-06,14.4^M,14.7,5.4,0.0,47.0^M,14.8^M,97.0^M,31.3
Run Code Online (Sandbox Code Playgroud)

我试过了

tr -d '^M' < file.csv > file2.csv
Run Code Online (Sandbox Code Playgroud)

但它也没有删除,也与sed.

bash

7
推荐指数
2
解决办法
9293
查看次数

从java创建的文件中获取unix中每一行后的"^ M"

我有一个Java程序,它使用以下语句创建文件并打印一堆数据:

out.write(data+"|"+data2+"\r\n");
Run Code Online (Sandbox Code Playgroud)

当我在Unix中使用vim查看此文件时,我会在每行后看到^ M. 它是什么?是什么造成的?我怎么能摆脱它?

java unix vim

4
推荐指数
1
解决办法
3751
查看次数

标签 统计

vim ×6

bash ×2

line-endings ×2

linux ×2

unix ×2

carriage-return ×1

dos2unix ×1

eclipse ×1

editor ×1

file ×1

gnu ×1

homebrew ×1

java ×1

macos ×1

sed ×1

windows ×1