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

相关推荐
再__努力1点20 分钟前
【77】积分图像:快速计算矩形区域和核心逻辑
开发语言·图像处理·人工智能·python·算法·计算机视觉
Evand J28 分钟前
【2026课题推荐】基于小波/互相关/FFT的卡尔曼滤波的轨迹估计,及MATLAB例程的运行结果
开发语言·matlab·目标跟踪·轨迹跟踪
独自归家的兔34 分钟前
Java Robot 详解:系统级鼠标 / 键盘模拟的核心原理与实战
java·开发语言
小灰灰搞电子40 分钟前
Qt 开发环境选择Qt Creator、Visual Studio还是 VS Code?
开发语言·qt·visual studio
何中应42 分钟前
Bean的三种注入方式
开发语言·spring boot·后端·spring
wanghowie1 小时前
01.03 Java基础篇|面向对象核心与设计实践
java·开发语言
巴拉巴拉~~1 小时前
Flutter 通用滑块组件 CommonSliderWidget:单值 / 范围 + 刻度 + 标签 + 样式自定义
开发语言·前端·javascript
是苏浙1 小时前
零基础入门Java之设计图书管理系统
java·开发语言
墨雪不会编程1 小时前
C++内存管理深度剖析
java·开发语言·c++
鹿角片ljp2 小时前
智能家居控制系统Java实现
java·开发语言·智能家居