.iso 文件上的 less 默认行为

.iso 文件上的 less 默认行为

我使用 ubuntu 14.04,遇到以下问题。搜索此网站没有找到任何结果,谷歌也没有找到。

我使用一些带有 .iso 后缀的数据文件。这些是简单的 ascii 数据文件,而不是ISO 映像。但是,当我尝试在终端中“less”其中一个文件时,我收到错误消息:

CD-ROM is NOT in ISO 9660 format

换句话说,它根据后缀将它们视为 ISO 映像。'more' 实用程序将它们视为常规文本文件,但没有 'less' 那么多方便的选项。

我可以更改此文件后缀的默认行为吗?如果可以,该怎么做?

答案1

可能发生的情况是文件处理被默认拦截lessfile 输入预处理器。虽然我对此没有任何经验,但据man lessfile我所知,可以通过以下方式覆盖默认行为:

USER DEFINED FILTERS
       It  is  possible to extend and overwrite the default lesspipe and less‐
       file input processor if you have specialized  requirements.  Create  an
       executable  program with the name .lessfilter and put it into your home
       directory. This can be a shell script or a binary program.
.
.
.

但是,如果你的文件是纯 ASCII 文本,那么只需完全禁用预处理器就足够了 - 可以通过设置一个空的LESSOPEN环境变量

LESSOPEN= less yourfile.iso

或使用-L命令行选项

less -L yourfile.iso

man less

   -L or --no-lessopen
          Ignore the LESSOPEN environment variable  (see  the  INPUT  PRE‐
          PROCESSOR  section  below).   This option can be set from within
          less, but it will apply only to files opened  subsequently,  not
          to the file which is currently open.

答案2

我添加了这个答案,因为之前的答案看起来很像环境技巧,有点“太奇怪”或冗余效率低下。

最可能的格式简单且常见的 ASCII二进制是.txt
美国标准信息交换码

您有机会将 ASCII 保存为.txt,并保存.txt内部标准.iso,并且您可以使用相同的方式运行这些文件标准环境。

因为.iso文件格式与磁盘映像有关。

相关内容