But*_*kus 4 dos2unix line-endings centos6
默认情况下,它不应该影响二进制文件。
我在一个带有图像的文件夹中对其进行了测试,虽然大多数图像没有受到影响,但有一些是。如果dos2unix
无法从文本文件中分辨出二进制文件,我是否必须特别包括和/或排除某些文件扩展名才能使其正常工作?
注意:当我file image.jpg
在任何 jpg 上运行时,无论它是否被修改,结果都是:
JPEG image data, JFIF standard 1.01
Run Code Online (Sandbox Code Playgroud)
这是 dos2unix 程序源代码的相关部分:
if ((ipFlag->Force == 0) &&
(TempChar < 32) &&
(TempChar != 0x0a) && /* Not an LF */
(TempChar != 0x0d) && /* Not a CR */
(TempChar != 0x09) && /* Not a TAB */
(TempChar != 0x0c)) { /* Not a form feed */
RetVal = -1;
ipFlag->status |= BINARY_FILE ;
if (ipFlag->verbose) {
if ((ipFlag->stdio_mode) && (!ipFlag->error)) ipFlag->error = 1;
d2u_fprintf(stderr, "%s: ", progname);
d2u_fprintf(stderr, _("Binary symbol 0x00%02X found at line %u\n"),TempChar, line_nr);
}
break;
}
Run Code Online (Sandbox Code Playgroud)
看来,如果文件有其他控制字符,则将其视为二进制文件并跳过,否则将其作为文本文件处理。因此,如果二进制文件(例如图像)不包含这些字符,它将被损坏。
归档时间: |
|
查看次数: |
1338 次 |
最近记录: |