GNU/Linux >> Linux の 問題 >  >> Linux

TERM 環境変数が設定されていません

あなたは次のステートメントで質問に答えました:

<ブロック引用>

Cron はこれを .sh と呼びます 2分ごと

Cron はターミナルでは実行されません。

このエラー メッセージが表示される最も一般的な理由は、スクリプトがユーザーの .profile を取得しようとするためです。 tty関連の何かを行う前に、端末で実行されていることを確認しません。回避策には、次のようなシバン行の使用が含まれます:

#!/bin/bash -p

これにより、システム レベルのプロファイル スクリプトがソース化されます。このスクリプトは、あまりばかげたことをしようとせず、端末からの実行に依存するコードを保護します。

これがスクリプト全体の場合、TERM 他の何かからエラーが発生しています スクリプトのプレーンなコンテンツよりも。


端末コマンド、つまり「クリア」を使用して、cron (端末なし) から呼び出されたスクリプトで、このエラー メッセージが表示されます。あなたの特定のスクリプトでは、smbmount コマンドは端末を想定しているため、上記の回避策が適切です。


本当に設定されていないかどうかを確認できます .コマンド set | grep TERM を実行します .

そうでない場合は、次のように設定できます:export TERM=xterm


Linux
  1. ユーザー環境変数を設定する方法は? (永続的に、セッションではありません)?

  2. 環境変数がどこから来たのかを判断する方法は?

  3. Zsh:TmuxではTerm =screen-256colorを設定しますが、TmuxなしではXterm-256color?

  1. BashスクリプトのRmコマンドは変数では機能しませんか?

  2. Maven環境変数が他の端末で機能していませんか?

  3. Linux エクスポート コマンドの例 (環境変数の設定方法)

  1. シェルスクリプトで環境変数を設定/Tomcatアプリケーションでアクセス

  2. UbuntuのPATH変数はどこに設定されていますか?

  3. シェルコマンドを使用してGDB内で環境変数を設定するには?