shell/bash 让vi/vim显示空格,及tab字符

Vim 可以用高亮显示空格和TAB。

文件中有 TAB 键的时候,你是看不见的。要把它显示出来:
:set list
TAB 键显示为 ^I, $ 显示在每行的结尾,表示换行空格仍然显示为空格。

:set list 进入List Mode
:set nolist 退出List Mode


linux 行尾 ^M 是什么

这和Linux与Windows断行/换行格式有关。DOS (Windows 系统)使用的断行/换行字符为 ^M$ ,我们称为 CR 与 LF 两个符号。

而在 Linux 下,则是仅有LF ($) 这个断行/换行符号。

在 Linux 下打开Windows的文件时,由于 DOS 的断行符号是 CRLF ,就会多了一个 ^M 的符号出来。

在这样的情况下,如果是一个 shell script 的程序文件,将可能造成"程序无法执行"的状态。 因为会误判程序所下达的指令内容。

可以使用dos2unix来转换:
dos2unix file

LF($, ^J) \n 10

CR(^M) \r 13

相关推荐
维吉斯蔡6 小时前
【VS Code / Cursor】文件夹右键快捷打开与文件类型自动关联
开发语言·程序人生·学习方法
luj_17688 小时前
星火科技助力边远地区防病攻坚
c语言·开发语言·c++·经验分享·算法
always_TT8 小时前
【Python 日志记录:logging 模块入门】
开发语言·python·php
xcLeigh8 小时前
Go入门:变量声明的五种方式详解
java·开发语言·golang
zmzb01039 小时前
C++课后习题训练记录Day175
开发语言·c++
脱胎换骨-军哥9 小时前
C++ 代码规范与格式化指南
开发语言·c++·代码规范
枕星而眠10 小时前
C++ STL Map容器完全指南:从有序红黑树到无序哈希表
java·开发语言
爱吃牛肉的大老虎11 小时前
Rust对象之结构体,枚举,特性
开发语言·后端·rust
bbq粉刷匠11 小时前
HashMap 底层原理深度拆解(二):putVal 完整链路解析(懒加载 · 链表遍历 · 尾插法)
java·开发语言·哈希算法
@三十一Y11 小时前
C++:红黑树的实现
开发语言·c++