Linux命令:unexpand

发布时间:2026/8/25 22:45:42

Linux命令:unexpand
unexpand 命令基本介绍unexpand命令用于将文件中的空格转换为制表符Tab是expand命令的逆操作。默认情况下unexpand仅转换行首的连续空格为制表符使用-a选项可转换所有位置的空格序列。常用于在保留缩进结构的同时减小文件体积或将用空格格式化的代码还原为 Tab 缩进格式。资料合集https://pan.quark.cn/s/6fe3007c3e95、https://pan.quark.cn/s/561de99256a5、https://pan.quark.cn/s/985f55b13d94、https://pan.quark.cn/s/d0fb20abd19a语法unexpand [选项] [文件...]若未指定文件或文件为-则从标准输入读取。常用选项-a, --all转换所有空格序列不仅是行首这是与默认行为最关键的区别--first-only仅转换行首的空格序列默认行为当与-t一起使用时显式指定-t, --tabsN设置制表符宽度为每 N 个字符一个制表位隐含-a即转换全部空格-t, --tabsLIST使用逗号分隔的列表指定自定义制表位位置--help显示帮助信息并退出--version显示版本信息并退出使用示例1. 转换行首空格为制表符默认行为# 文件内容用 . 代表空格便于观察# ....printf(hello); - 4 个空格缩进# ........printf(world); - 8 个空格缩进unexpandfile.txt输出中行首的空格会被尽可能替换为制表符。2. 转换所有位置的空格序列# 文件内容name age city用空格对齐的列unexpand-adata.txt将文件中所有连续的空格包括行中对齐用的空格转换为制表符。3. 指定制表符宽度# 假设制表符宽度为 4unexpand-t4file.txt按每 4 个字符一个制表位转换空格。注意-t会隐含启用-a行为。4. 使用自定义制表位列表# 制表位位于第 8、16、24、36 列unexpand-t8,16,24,36 file.txt5. 从标准输入读取并转换echo indented text|unexpand将管道输入中的行首空格转为制表符。6. 还原 expand 的输出expand-t4file.txtexpanded.txtunexpand-t4expanded.txtoriginal.txtexpand与unexpand配合可实现 Tab↔空格 的相互转换。7. 配合 cat -A 查看转换效果unexpand-afile.txt|cat-A# ^I 表示制表符便于验证转换结果8. 批量转换文件forfin*.c;dounexpand-t4--first-only$f$f.tmpmv$f.tmp$fdone将所有 C 源文件的行首空格转换为 4 宽度制表符。注意事项默认仅转换行首不加-a时unexpand只处理每行开头的空白序列行中间的空格保持不变。-t隐含-a使用-t N时会自动启用全部转换行为若希望仅转换行首需显式加--first-onlyunexpand-t4--first-only file.txt空格数必须足够只有当空格数达到制表位边界时才会被替换为 Tab剩余不足的空格保留。混合空白处理行首若混合 Tab 和空格unexpand会尝试合并处理结果可能不直观。非破坏性不会修改原文件需通过重定向保存结果。相关命令expand将制表符转换为空格unexpand的逆操作tabs设置终端的制表符显示位置column按列对齐文本pr分页并格式化文本文件cut/paste按列处理文本与 expand 的对比特性expandunexpand转换方向Tab → 空格空格 → Tab默认处理范围所有 Tab仅行首空格需-a才处理全部否默认全部是默认仅行首常用场景让代码在不同环境正确显示还原 Tab 缩进、减小体积配合-t控制输出空格宽度控制制表位位置实用技巧在 Vim 中实现类似功能:set expandtab :set tabstop4 :retab将 Tab 转为空格expand反之:set noexpandtab | :retab!可将空格转为 Tab。检查文件使用 Tab 还是空格cat-Tfile.txt# Tab 显示为 ^Igrep-P\tfile.txt总结unexpand命令是将空格还原为制表符的实用工具特别适用于统一代码缩进风格、压缩文本体积等场景。掌握其与expand的配合使用能灵活处理各种 Tab/空格 转换需求。使用时需注意默认仅处理行首空格这一关键特性通过-a或-t选项可调整转换范围。

相关新闻

【会议征稿通知 | 重庆邮电大学、重庆蚂蚁消费金融有限公司主办 | IEEE出版 | EI 、Scopus稳定检索】第一届粒球计算国际会议(ICGBC 2026)

【会议征稿通知 | 重庆邮电大学、重庆蚂蚁消费金融有限公司主办 | IEEE出版 | EI 、Scopus稳定检索】第一届粒球计算国际会议(ICGBC 2026)

2026/8/25 22:45:42

第一届粒球计算国际会议(ICGBC 2026) 2026 International Conference of Granular-Ball Computing 2026年10月16-18日 | 中国重庆市 大会官网:www.icgbc.org 截稿时间:见官网(早投稿,早录用)…

HarmonyOS社交通讯应用开发17: 跨设备拉取媒体(CollaborationService)

HarmonyOS社交通讯应用开发17: 跨设备拉取媒体(CollaborationService)

2026/8/25 22:35:41

跨设备拉取媒体(CollaborationService) 引言 上一篇我们看了"从本机相册选图",这一篇升级到"跨设备":用户手机上没有合适的图片,能不能直接从平板、电脑甚至另一台手机里挑?HarmonyOS …

高校科研团队需要哪些材料完成技术成果电子汇编?

高校科研团队需要哪些材料完成技术成果电子汇编?

2026/8/25 22:35:41

观点作者:科易网-国家科技成果转化(厦门)示范基地 近年来,随着我国科技创新能力的持续提升,高校科研团队在科研成果产出方面取得了显著进展。然而,伴随着成果数量的激增,如何高效地将科研成果进…

基于SpringBoot的社区团购小程序的设计与实现源码+文档+讲解视频

基于SpringBoot的社区团购小程序的设计与实现源码+文档+讲解视频

2026/8/25 23:35:43

温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台…

**央视纪录片教学素材指南:中小学老师怎么建自己的免费素材库

**央视纪录片教学素材指南:中小学老师怎么建自己的免费素材库

2026/8/25 23:35:43

老婆是小学语文老师,经常要找教学素材。上学期学校要求做多媒体课件评比,她问我:央视纪录片里的画面能不能用到课件里? 我说能,而且这是最好的选择。这篇就是帮她建素材库的完整过程,同样需要教学素材的老…

基于java+springboot的教务管理系统设计与实现(源码+lw+部署文档+讲解等)

基于java+springboot的教务管理系统设计与实现(源码+lw+部署文档+讲解等)

2026/8/25 23:35:43

温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台…

免费把 NCM 转 MP3:ncmdump 三步拖拽上手教程

免费把 NCM 转 MP3:ncmdump 三步拖拽上手教程

2026/8/25 23:35:43

免费把 NCM 转 MP3:ncmdump 三步拖拽上手教程 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump ncmdump 是一个单文件、免费的 NCM 转 MP3 工具:把 .ncm 文件拖到 main.exe 图标上,几秒后就能拿到任…

Matplotlib子图编程:深入理解figure与axes对象

Matplotlib子图编程:深入理解figure与axes对象

2026/8/25 23:35:43

1. 项目概述:为什么我们需要理解figure和axes?如果你刚开始用Python的Matplotlib库画图,大概率会从一行简单的plt.plot(x, y)开始。它很友好,画个折线图不费吹灰之力。但当你需要把多张图并排展示,或者想精细控制图中每…

Java单例模式深度解析与面试实战指南

Java单例模式深度解析与面试实战指南

2026/8/25 23:25:43

1. 单例模式的核心概念与面试权重单例模式(Singleton Pattern)作为创建型设计模式的代表,在Java面试中的出现频率高达78%(根据2023年主流大厂面试题库统计)。其核心在于确保一个类仅有一个实例,并提供一个全…

[光学原理与应用-521]:对光的错误理解与纠偏

[光学原理与应用-521]:对光的错误理解与纠偏

2026/8/24 19:53:32

首先光是一种能量的载体和形态,宏观上观察到的光是由无数个微观的光量子组成的,每个光子在产生的瞬间,其在真空的空间中以确定不变的速度沿着一个初始的方向一直向前,在微观层面,每个光量子的运动轨迹是以波函数所展现…

SIP通话转接原理与REFER方法实战解析

SIP通话转接原理与REFER方法实战解析

2026/8/24 19:56:07

1. 通话转接不是“挂断再拨号”,而是SIP会话的动态重定向你有没有遇到过这样的场景:客服坐席A正在和客户通电话,突然需要把这通对话无缝转给专家坐席B,客户完全感知不到中间的断连——既没听到忙音,也没被要求重新拨号…

Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

2026/8/24 21:16:09

1. 为什么选择Kolla-ansible来部署单节点OpenStack?如果你正在寻找一种能把OpenStack从“概念”快速变成“可用的实验环境”的方法,那么Kolla-ansible几乎是当前最主流、最省心的选择。我见过太多人卡在手动编译依赖、配置服务、处理版本冲突的泥潭里&am…

三步把QQ空间历史说说导出到本地:GetQzonehistory 极简指南

三步把QQ空间历史说说导出到本地:GetQzonehistory 极简指南

2026/8/25 0:04:34

三步把QQ空间历史说说导出到本地:GetQzonehistory 极简指南 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory Meta Description:GetQzonehistory 是一个QQ空间历史说…

洛谷 P7912:[CSP-J 2021 T4] 小熊的果篮 ← 双向链表

洛谷 P7912:[CSP-J 2021 T4] 小熊的果篮 ← 双向链表

2026/8/25 0:04:35

【题目来源】 https://www.luogu.com.cn/problem/P7912 【题目描述】 小熊的水果店里摆放着一排 n 个水果。每个水果只可能是苹果或桔子,从左到右依次用正整数 1,2,…,n 编号。连续排在一起的同一种水果称为一个“块”。小熊要把这一排水果挑到若干个果篮里&#x…

Transformers.js 网页端图像抠图实战:零后端 3 行代码返回透明 PNG

Transformers.js 网页端图像抠图实战:零后端 3 行代码返回透明 PNG

2026/8/25 0:04:35

Transformers.js 网页端图像抠图实战:零后端 3 行代码返回透明 PNG 【免费下载链接】transformers.js State-of-the-art Machine Learning for the web. Run 🤗 Transformers directly in your browser, with no need for a server! 项目地址: https:/…

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

2026/8/22 2:02:26

一天写完毕业论文在2026年已不再是天方夜谭。2026年最炸裂、实测能大幅提速的AI论文写作工具,覆盖选题构思、文献整理、内容生成、格式排版等核心场景,真正帮你高效搞定论文难题。 一、全流程王者:一站式搞定论文全链路(一天定稿首…

导师推荐!2026最新AI论文工具测评与实用推荐

导师推荐!2026最新AI论文工具测评与实用推荐

2026/8/22 4:13:47

2026年真正好用的AI论文工具,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。 一、…

告别游戏崩溃:XCOM 2模组管理器的智能革命

告别游戏崩溃:XCOM 2模组管理器的智能革命

2026/8/22 1:32:34

告别游戏崩溃:XCOM 2模组管理器的智能革命 【免费下载链接】xcom2-launcher The Alternative Mod Launcher (AML) is a replacement for the default game launchers from XCOM 2 and XCOM Chimera Squad. 项目地址: https://gitcode.com/gh_mirrors/xc/xcom2-lau…