您在这里使很多事情感到困惑,让我尝试为您分开。
awk '{print}' ...
这与print
您要问的无关。awk
是一种动态编程语言,其中包含自己的命令,其中print
之一就是命令。
print --"text/plain" "prayag works on JVM"
和其他形式
该命令print
用于针对mailcap文件的每个内容显示文件,使用针对每种特定文件类型的指定“处理程序”,而不是用于在屏幕上打印字符串。
印刷手册页摘录
运行mailcap,查看,查看,编辑,撰写,打印-通过mailcap文件中的条目执行程序
run-mailcap(或其任何别名)将使用给定的操作依次处理每个mime类型/文件。每个文件都指定为它的mime类型,其编码(例如压缩)和文件名,并用冒号分隔。如果省略了mime-type,则尝试通过将文件的扩展名与mime.types文件中的扩展名进行匹配来确定类型。如果省略了编码,则还将根据文件的扩展名确定编码。当前支持的编码是gzip(.gz),bzip(.bz),bzip2(.bz2)和compress(.Z)。文件名“-”可用于表示“标准输入”,但必须指定mime类型。
echo
该命令echo
是您正在使用的shell的内置命令,称为Bash(我假设您正在使用Bash)。您可以使用以下命令来确认这一点:
$ type -a echo
echo is a shell builtin
echo is /bin/echo
您会注意到,echo
它也是一个独立的可执行文件/bin/echo
。这是与echo
您所使用的命令不同的命令,但目的类似。
print
在zsh / ksh之类的shell中
感谢@Gilles注释,print
您正在寻找的命令很可能是内置在shell中的命令,例如zsh
and / or ksh
。您可以通过手册页来查看其用法man zshbuiltins
。
例
zsh % print "hello world"
hello world
您可以通过键入zsh
或来运行这些外壳之一ksh
。
打印
也许您正在寻找命令printf
?
$ printf "%s\n" "hello stringy world"
hello stringy world
$ printf "this is some padded digits: %04d\n" "10"
this is some padded digits: 0010
该命令printf
采用一组特殊字符格式,以便您可以指示它如何显示诸如字符串或数字等内容。有关的信息,请参见手册页printf
。
邮件盖
因此,很多人可能对文件一无所知/etc/mailcap
。该文件包含mime类型(文件的标头,用于标识文件的文件类型)。然后,您可以在此mailcap
文件中创建条目,以指定用于打开文件的特定mime类型的工具。
例
text/html; /usr/bin/sensible-browser '%s'; description=HTML Text; nametemplate=%s.html
application/x-troff-man; /usr/bin/nroff -mandoc -Tutf8; copiousoutput; print=/usr/bin/nroff -mandoc -Tutf8 | print text/plain:-
application/x-ogg; /usr/bin/mplayer '%s'; description="OggVorbis Audio"
application/ogg; /usr/bin/mplayer '%s'; description="OggVorbis Audio"
audio/mpeg; /usr/bin/mplayer '%s'; description="MPEG Audio Format"
audio/x-mpegurl; /usr/bin/mplayer '%s'; description="Icecast Playlists"
audio/x-ms-wax; /usr/bin/mplayer '%s'; description="Audio Format"
上面几行说,如果您得到的文件带有mime-type audio/mpeg
,则使用该工具/usr/bin/mplayer
打开该文件。
这些规则通常由电子邮件工具使用,但是其他工具也可以利用mailcap
文件中的这些条目。
如果您想了解有关mime类型或mailcap的更多信息,请参阅以下参考。
参考文献