Linux编码及dos2unix,unix2dos命令
通常我们在执行shell脚本的时候会遇到类似下面的错误,而事实上脚本没有任何问题,很多人会卡在这一步很久,其实有可能是编码导致的回车符不一致引起的:
ERROR:
$'\r': command not found
^M: bad interpreter
No such file or directory
这种情况有可能发生在脚本在windows环境下编写或修改,然后上传到Linux服务器执行时报错,可以使用dos2unix命令将DOS编码转为UNIX编码,同样也可以使用unix2dos命令将UNIX编码转为DOS编码。
#DOS编码转为UNIX编码
dos2unix filename#UNIX编码转DOS编码
unix2dos filename#有些机器上没有安装dos2unix命令,也可以使用vim命令修改编码
vim filename
#vim打开文件后执行下面的命令即可转为unix编码
:set fileformat=unix
类似的还有 mac2unix, unix2mac 适用于mac系统和unix系统编码转换;
例子:
wyk_csdh.sh
#!/bin/bash
BASEDIR="`dirname $0`"
name=$1
company=$2echo $BASEDIR
echo $name
echo $company
这个shell在windows环境下编辑,上传到linux环境执行后会报错:
使用cat -v命令可以看到非打印的特殊字符:
cat --help
Usage: cat [OPTION]... [FILE]...
Concatenate FILE(s), or standard input, to standard output.-A, --show-all equivalent to -vET-b, --number-nonblank number nonempty output lines, overrides -n-e equivalent to -vE-E, --show-ends display $ at end of each line-n, --number number all output lines-s, --squeeze-blank suppress repeated empty output lines-t equivalent to -vT-T, --show-tabs display TAB characters as ^I-u (ignored)-v, --show-nonprinting use ^ and M- notation, except for LFD and TAB--help display this help and exit--version output version information and exit
使用dos2unix转为unix编码:
使用vim命令转换编码:
希望本文对你有帮助,请点个赞鼓励一下作者吧~ 谢谢!
Linux编码及dos2unix,unix2dos命令相关推荐
- dos2unix和unix2dos命令使用
转自: http://solecjj.blogbus.com/logs/19425369.html dos2unix, unix2dos 用来实现 DOS <=> UNIX text fi ...
- 【Linux系统管理】05 常用命令 06 vim编辑器
一.命令的基本格式 1.1 命令的提示符 [root@localhost ~]# []:这是提示符的分隔符号,没有特殊含义. root:显示的是当前的登录用户,现在使用的是root用户登录. @:分隔 ...
- 很实用的Linux 系统运维常用命令及常识(超实用)
很实用的Linux 系统运维常用命令及常识(超实用) 作为Linux运维,需要了解Linux操作系统的基本使用和管理知识,下面脚本之家小编给大家介绍下Linux运维需要掌握的命令,想成为Linux运维 ...
- Linux系统运维常用命令
Linux 系统运维常用命令 1 文件管理2 软件管理3 系统管理 4 服务管理5 网络管理6 磁盘管理 7 用户管理8 脚本相关9 服务配置 ============================ ...
- linux无界面手敲命令笔记
0 Ubuntu相关命令简介 1. 文件及目录操作命令 pwd:显示用户当前所处的目录 ls:列出目录下的文件清单 cd:改变当前目录cd - 返回上一级目cd / 进入根目录不加参数或参数为&quo ...
- linux 批量处理 dos2unix
在 windows 下编辑过的文件一般都会被保存为 dos 格式, 而 mac os x 和 *nix 类系统一般都是使用 unix 格式, 在windows下编辑过的文件在*nix下打开,会被加上^ ...
- linux解压mysql文件命令行_linux mysql命令
1.linux下启动mysql的命令: mysqladmin start /ect/init.d/mysql start (前面为mysql的安装路径) 2.linux下重启mysql的命令: mys ...
- linux sort,uniq,cut,wc命令详解
linux sort,uniq,cut,wc命令详解 sort sort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出.如果 File 参数指定多个文件,那么 sort 命令将这些 ...
- linux查代替命令,Linux下查/删/替 命令(转)
▪查看某目录下所有文件的个数: [root@localhost1 opt]# ls -l |grep "^-"|wc -l ▪查看某目录下所有文件的个数,包括子目录里面的: [ro ...
最新文章
- android学习笔记Fragment的使用
- 101个MySQL的调节和优化的Tips
- SSH HTTPS 公钥、秘钥、对称加密、非对称加密、 总结理解
- WinForm------GridControl单元格内容修改外表样式
- Jmeter之测试片段和模块控制器应用
- V-SQL的简单使用
- mockit学习(一)
- 代的划分是根据计算机的运算速度来划分,计算机的发展经历了四代,代的划分是根据计算机的运算速度来划分....
- 二维傅里叶变换的矩阵表示
- std::stack使用总结
- 三色旗问题中的快排应用
- SQL Server2019配置管理器无法连接到 WMI 提供程序
- x98air2+android+升级,【转】台电x98 3G 平板刷机、升级、ROOT详解及教程
- Zabbix5.0网易邮箱163告警详细步骤
- ArcMap突然无法打开
- 读《小王子三部曲-夜间飞行》有感
- 【模块介绍】6×6矩阵键盘(硬件部分和扫描方式)
- import obspy报错‘numpy.int64‘ object has no attribute ‘split‘`
- 学完java学历不高工作能找吗_低学历学Java能找到工作吗?
- Android 12.0 Launcher客制化指导手册