echo
linuxコマンドを使用して端末にメッセージを印刷しました。
prayag@prayag$ echo "prayag works on JVM"
prayag works on JVM
print
コマンドを使用して同じ出力を取得できますか?
実際にマニュアルを見てみると、$ man print
Run-mailcap-programsと説明されていましたが、以前に聞いたことのない用語でした。 MIMEベースのファイルを開く正しいプログラムを見つけるために使用されることを学びました。
だから何ができますか?簡単なラインを印刷してくださいprint
代わりに単独で使用しますかecho
?
同様の問題を発見Bashスクリプトの変数にテキストファイルの内容を割り当てる必要があります。echo
ところで、そこに人々がそれを提案しましたprint
。
フォローしてみましたが、問題が発生しました。
$ print --"text/plain" "prayag works on JVM"
Warning: unknown mime-type for "prayag works on JVM" -- using "application/octet-stream"
Error: no such file "prayag works on JVM"
文書を要求して提供します。
$ print --"text/plain" application.properties
Warning: unknown mime-type for "application.properties" -- using "application/octet-stream"
Error: no "print" mailcap rules found for type "application/octet-stream"
awk
しかし、コマンドと提供されたファイルを組み合わせると
$ awk '{print}' application.properties
prayag works on JVM
ベストアンサー1
あなたはここで多くを混乱させています。私はあなたのために整理するように努力します。
awk '{print}' ...
print
これはあなたが質問した質問とは関係ありません。awk
独自のコマンドの1つを含む動的プログラミング言語print
。print --"text/plain" "prayag works on JVM"
そして他の形このコマンドは、
print
画面に文字列を印刷するのではなく、特定のファイルタイプごとに指定された「ハンドラ」を使用してmailcapファイルの内容に基づいてファイルを表示するために使用されます。マニュアルページから抜粋した内容を印刷する
run-mailcap、表示、表示、編集、作成、印刷 - mailcapファイルのエントリを介してプログラムを実行する
run-mailcap(またはそのエイリアス)は、指定された操作を使用して各MIMEタイプ/ファイルを順番に処理します。各ファイルは、MIMEタイプ、エンコード(圧縮など)、ファイル名をコロンで区切って指定します。 mime-type が省略された場合、ファイル拡張子を mime.types ファイルの拡張子と一致させてタイプを決定しようとします。エンコードを省略すると、ファイル拡張子によって決まります。現在サポートされているエンコーディングは、gzip(.gz)、bzip(.bz)、bzip2(.bz2)、および圧縮(.Z)です。ファイル名「-」は「標準入力」を表すために使用できますが、MIMEタイプを指定する必要があります。
echo
このコマンドは、
echo
あなたが使用しているBashというシェルに組み込まれているコマンドです(Bashを使用すると仮定します)。次のコマンドを使用してこれを確認できます。$ type -a echo echo is a shell builtin echo is /bin/echo
echo
このコマンドはスタンドアロンの実行可能ファイルでもあることがわかります/bin/echo
。このコマンドは使用しているコマンドとは異なりますが、echo
目的は似ています。print
zsh / kshのようなシェルから@Gillesのコメントのおかげで、探しているコマンドは、および/または
print
シェルに組み込まれているコマンドである可能性が高くなります。マニュアルページで使用方法を確認できます。zsh
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の詳細については、次のリソースを参照してください。