即使使用 -f 选项,dos2unix 也不会转换 env 文件

问题描述

当我运行 npm 命令时,它抛出了这样的错误

10:13 $ npm install --legacy-peer-deps

> project-client@1.0.0 prepare
> scripts/transpile

/usr/bin/env: ‘bash\r’: No such file or directory

我认为这与 Windows 中的行尾问题有关,因此我尝试了以下操作。

✔ /usr/bin
11:00 $ dos2unix env
dos2unix: Failed to open temporary output file: Permission denied
dos2unix: problems converting file env
✘-13 /usr/bin
11:01 $ sudo dos2unix env
dos2unix: Binary symbol 0x02 found at line 1
dos2unix: Skipping binary file env

下面帖子的答案说添加选项 -f 将强制转换,

dos2unix: Binary symbol found,skipping binary file

但它仍然没有让我转换它。

✔ /usr/bin
11:01 $ sudo dos2unix env -f
dos2unix: Binary symbol 0x02 found at line 1
dos2unix: Skipping binary file env

有什么办法可以解决这个问题吗?

解决方法

第一个选项-f,然后是文件名:

sudo dos2unix -f env