Hem*_*ant 9 command-line software-rec
假设你正在一个很旧的Unix服务器上,其中dos2unix,perl,tr,和sed不存在。如何将文件从dos转换为unix格式?
jjc*_*son 12
我认为您指的是删除行尾的插入符号-M。您可以在 vi 中使用搜索和替换来执行此操作。
在 vi 中,我通常这样做:(其中“^”代表 CTRL):
:%s/^V^M//g
Run Code Online (Sandbox Code Playgroud)
在屏幕上显示为:
:%s/^M//g
Run Code Online (Sandbox Code Playgroud)
没有tr或sed必须非常旧的服务器,或者缺少一些基本命令。希望ed就在那里;它存在于Unix 第一版中。
ed /path/to/file
1,$s/^V^M$//
w
q
Run Code Online (Sandbox Code Playgroud)
where^V^M表示输入Ctrl+V然后Ctrl+ M(输入文字换行)。如果您知道所有行都以 CR LF 结尾,则可以1,$s/.$//改用(不加选择地删除每行的最后一个字符)。