Linux环境如何判断一个文件是文本文件?

Linux环境如何判断一个文件是文本文件?,第1张

没有任何办法判断是不是文本文件。 追问: 据说,函数对文件进行读取,直到到达一个“非文本字符“就可以判断它不是 文本文件 了。那么“非文本字符“是什么东西? 回答: 文本本来就有很多种编码,没有办法说一个位模式 是不是文本字符,如果不知道 编码方式 的话。

(1)、文本文件

文本文件是包含用户可读信息的文件。这些文件以ASCII码方式存储,可显示和打印。文本文件的行不能包括空字符(即码中的NULL),行的最大长度(包括换行符在内)也不能超过(LINE_MAX)所定义的字节数。不过文本文件中并不限制使用除空字符以外的控制字符或其它不可打印字符。

(2)、二进制文件(实际上这种说法不准确,因为文本文件也是用二进制代码存放的,称为非文本文件比较好)

二进制文件是包含计算机可读信息的文件。二进制文件可以是可执行的文件,使系统根据其中的指令完成某项工作。命令和程序都是以可执行的而进制文件方式存储。二进制文件没有行的长度限制,也可包含空字符。

#!/bin/bash

grep '1166' 1.txt  #grep去检索字符串1166,检测到则返回0,否则返回1;

if [ $? -eq 0 ]then  #判断上一条指令grep检索返回结果,如果是0,则执行下面的关机命令

/sbin/shutdown -h now  #关机命令

fi


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/8580325.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-18
下一篇 2023-04-18

发表评论

登录后才能评论

评论列表(0条)

保存