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

相关推荐
lly2024063 分钟前
《堆的 shift down》
开发语言
黎雁·泠崖23 分钟前
【魔法森林冒险】2/14 抽象层设计:Figure/Person类(所有角色的基石)
java·开发语言
季明洵1 小时前
C语言实现单链表
c语言·开发语言·数据结构·算法·链表
墨雪不会编程1 小时前
C++之【深入理解Vector】三部曲最终章
开发语言·c++
浅念-1 小时前
C语言编译与链接全流程:从源码到可执行程序的幕后之旅
c语言·开发语言·数据结构·经验分享·笔记·学习·算法
小宋10211 小时前
Java 项目结构 vs Python 项目结构:如何快速搭一个可跑项目
java·开发语言·python
一晌小贪欢2 小时前
Python 爬虫进阶:如何利用反射机制破解常见反爬策略
开发语言·爬虫·python·python爬虫·数据爬虫·爬虫python
阿猿收手吧!2 小时前
【C++】异步编程:std::async终极指南
开发语言·c++
小程故事多_802 小时前
Agent Infra核心技术解析:Sandbox sandbox技术原理、选型逻辑与主流方案全景
java·开发语言·人工智能·aigc
沐知全栈开发2 小时前
SQL 日期处理指南
开发语言