印刷コマンドが見つかりません

印刷コマンドが見つかりません

korn シェルで印刷コマンドが見つからないというメッセージが表示され続けます。シェルで印刷を実行すると、同じ内容が表示されます。この問題をどのように解決できますか? printfはうまく機能しますが、何らかの理由でprintは機能しません。

これはRedhat 5.5で、kshは3.2.25リリースです。

ありがとう

答え1

より多くの情報を提供できますか? "print"は常に存在しなければならないkshのシェル組み込み機能です。以下は私のRedhatシステムに関するいくつかの情報です。

$ cat /etc/redhat\-release 
Red Hat Enterprise Linux Workstation release 6.3 (Santiago)

$ /bin/ksh --version
version         sh (AT&T Research) 93t+ 2010-06-21

$ whence -v print
print is a shell builtin

「print」というエイリアスがないことを確認することもできます。 /usr/binや/binなどに「print」という実行ファイルがありません。これがあなたにも効果があるかどうかを確認できます。新しいシェルインスタンスを起動し(「/bin/ksh」と入力して)、次のように言います。

PATH= whence -v print

答え2

kshには対応するバージョンはありません。しかし、これはRHEL 5.5のbashバージョンなので、bashを使用しているようです。 ksh 組み込み機能をお探しですか?使用echoまたはprintf交換してください。あるいは、kshを実行してください(インストールされていない可能性があります。bashは、組み込みLinuxのインストールでは事実上標準シェルです)。

printPOSIX準拠の翻訳オプションのガイドですprintf

  • オプションがないか-e:printf '%b\n'
  • 用途-n\n形式から(printf %bまたはprintf %s)省略
  • -p:コプロセスが必要な場合はkshが必要です
  • または-r-Rprintf '%s\n'
  • -s>>: 追加の目的の出力ファイルに明示的にリダイレクト
  • -u:リダイレクトを使用してください。printf … >&3

関連情報