【发布时间】:2012-02-25 02:22:41
【问题描述】:
假设您有 20 个文件,您不会不查看每个文件,而是让脚本确定文件的格式。
即 bash findFileFormat direcName
然后循环遍历目录中的每个文件并打印出文件名以及它是否有分隔符(在这种情况下是逗号、管道或其他)或用 for 字段分隔符固定,然后是什么是记录分隔符。即CR、LF、Ctrl+Z字符等
我在想,因为某些文件可能在数据中有很多管道和逗号,它可以使用每行每个字符的计数来确定分隔符是什么 --> 如果这个过程没有产生一致的数量每行的字符可以安全地假设文件使用固定宽度的字段分隔符。
是否有可用于确定每个文件的这 2 位信息的命令或脚本?
【问题讨论】:
-
无论您如何编写程序,您都必须设计一个非常复杂的类人逻辑来准确地执行您想要的操作。想想当您打开文件以确定格式时您的大脑所做的所有事情。有时它很容易发现(即您看到选项卡并且所有列都对齐)但有时它不会那么清楚。事实是,无论你怎么做,你能做的最好的事情就是给出一个“可能的最佳匹配”,给定一个可能的分隔符列表,但要准确地找到任何类型的文件的内容远非简单。
标签: linux bash shell unix scripting