修改windows文件的换行符
应用场景:
1 2 3 | 在办公中,有可能存在,某些命令脚本使用windows下的文本编辑器进行编写 当放到测试环境的Linux中时,运行报错 |
需要使用的软件:xxd hexdump dos2unix
1、运行windows上编写好的sh脚本
1 2 3 4 5 6 7 8 | [root@hlrgm ~] # bash test.sh test.sh: line 2 : $ '\r' : command not found 'f: invalid option -- ' Try 'df --help' for more information. test.sh: line 4 : $ '\r' : command not found 's: invalid option -- ' Try 'ls --help' for more information. test.sh: line 6 : $ '\r' : command not found |
2、查看sh脚本
1 2 3 4 5 6 | [root@hlrgm ~] # cat test.sh #!/bin/bash df - h ls - l<br> |
3、查看文本的二进制
1 2 3 4 | [root@hlrgm ~] # xxd test.sh 0000000 : 2321 2f62 696e 2f62 6173 680d 0a0d 0a64 #!/bin/bash....d 0000010 : 6620 2d68 0d0a 0d0a 6c73 202d 6c0d 0a0d f - h....ls - l... 0000020 : 0a . |
4、查看文本的十六进制
1 2 3 4 5 | [root@hlrgm ~] # hexdump test.sh 0000000 2123 622f 6e69 622f 7361 0d68 0d0a 640a 0000010 2066 682d 0a0d 0a0d 736c 2d20 0d6c 0d0a 0000020 000a 0000021 |
5、使用dos2unix修改文本
注意:dos2unix需要安装后使用,默认系统未安装
1 2 | [root@hlrgm ~] # dos2unix test.sh dos2unix: converting file test.sh to Unix format ... |
6、查看修改后文件的二进制和十六进制
1 2 3 4 5 6 7 8 9 | # 二进制 [root@hlrgm ~] # xxd test.sh 0000000 : 2321 2f62 696e 2f62 6173 680a 0a64 6620 #!/bin/bash..df 0000010 : 2d68 0a0a 6c73 202d 6c0a 0a - h..ls - l.. # 十六进制 0000000 2123 622f 6e69 622f 7361 0a68 640a 2066 0000010 682d 0a0a 736c 2d20 0a6c 000a 000001b |
7、对比
1 2 3 | windows:二进制下换行符号: 0d0a linxu:二进制下换行符号: 0a |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程