linux - 如何检测 busybox 上的文件类型

标签 linux busybox

Busybox 不包含传统的 Linux"file"命令。有没有其他方法可以检测文件是二进制还是ascii? 谢谢

最佳答案

你可以尝试使用grep。该线程包含使用 grep 命令的一些变体:https://stackoverflow.com/a/30133802/3694234 。对我来说,这个命令工作得很好。

$ grep -P "[^\x00-\x7F]" filename && echo Binary || echo Text

您可以在 bash 脚本中使用它

#!/bin/bash

type=$(grep -P "[^\x00-\x7F]" $1 > /dev/null && echo Binary || echo Text)

echo "File type: ${type}"

示例输出

$ ./getFileType.sh test.c 
File type: Text
$ ./getFileType.sh test
File type: Binary

关于linux - 如何检测 busybox 上的文件类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58949693/

相关文章:

awk - 忙碌框 awk : How to treat each character in String as integer to perform bitwise operations?

linux - 嵌入式 Linux 中的看门狗定时器 > 60 秒

linux - Docker Busybox 容器添加组和用户

c# - dnx 不加载正确的 .Net 库

linux - 如何使用 sed 替换文本文件中的文件名

linux - 将符号链接(symbolic link) libc.so.6 替换为另一个更新的 libc.so.6 后如何恢复?

linux - Docker 没有响应终端中的 CTRL+C

linux - TCPv4 源端口和目标端口是否可以相互冲突?还是源端口和目标端口位于它们自己的地址空间中?

linux - 用于测试来自流媒体服务器的流量的脚本?

shell - 在 shell 中为实用程序构建参数的可移植方法?