元のPATHを上書きしてコマンドが見つからないというメッセージが表示されるコマンド失敗の問題を解決する方法

元のPATHを上書きしてコマンドが見つからないというメッセージが表示されるコマンド失敗の問題を解決する方法

同僚から、LINUX サーバー上の多くのコマンドが (コマンドが見つかりません) というプロンプトで使用できない理由を解明してほしいと頼まれました。さらに悪いことに、多くのシステム サービスとスクリプトが実行できませんでした。質問させてください、これまで何をしてきましたか? 彼は、私も同じ操作を行っていて、/etc/profile ファイルに export PATH を追加しただけだと言って、どのように設定したのか尋ねました。 答えは次のとおりです。

[root@localhost ~]# vim /etc/profile 
PATH=/usr/lib/jenkins/ をエクスポートします。
[root@localhost ~]# ソース /etc/profile

彼は、Jenkins のデフォルトの作業ディレクトリを追加し、ソースを使用して構成ファイルを有効にしただけだと言いました。実際、問題はまさにここにあるのです。

PATH はシステム環境パスです。すべてのシステム コマンドとスクリプトの実行は、PATH パスに従って検索されます。しかし、 export PATH=/usr/lib/jenkins/とすると、(/bin/、/sbin などのシステム コマンドを格納するディレクトリなど) 以前にシステムによって設定されたすべてのディレクトリが上書きされ、jenkins の作業コマンドになります。 ls、pwd、cd などのシステム コマンドは、jenkins ディレクトリに確実に見つかりません。 その結果、すべてのコマンド、スクリプト、およびサービスが実行できなくなります。 これが、このひどい事件の主な原因です。

実際のシステム PATH を設定するにはどうすればいいですか?

短期的な設定の場合:

PATH=$PATH:/usr/lib/jenkins/ をエクスポートします。

長期設定の場合:

[root@localhost ~]# vim /etc/profile 
PATH=$PATH:/usr/lib/jenkins/ をエクスポートします。
[root@localhost ~]# ソース /etc/profile

この場合、元の PATH を上書きせずに、新しい検索パスが元の設定に追加されます。

要約する

以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。これについてもっと知りたい場合は、次のリンクをご覧ください。

以下もご興味があるかもしれません:
  • Linuxはjoin -a1を使用して2つのファイルを結合します
  • Linux でファイルを削除するときに「操作は許可されていません」というプロンプトが表示される場合の対処方法
  • Linux シェルコマンドは重複排除後の列の値をカウントします
  • Linux で履歴レコードを表示し、タイムスタンプを追加するためのヒント
  • LinuxのバックグラウンドでPythonプログラムを実行するいくつかの方法
  • Linux シェルスクリプトの作成と実行
  • PythonはLinuxを操作するためにparamikoを使用する
  • 2つのLinuxサーバー間でファイルとフォルダを転送する手順
  • Linuxターミナルでシェルスクリプトを実行して現在実行中のアプリのログを直接出力するAndroidの実装方法
  • Linux シェル環境での Zabbix API の使用

<<:  CocosCreator Huarongdaoデジタルパズルの詳しい説明

>>:  データベースを削除せずにMySQLのすべてのテーブルを素早く削除する方法

推薦する

VUEユニアプリ開発環境についての簡単な説明

目次1. HBuilderXビジュアルインターフェースを通じて2. vue-cliコマンドで実行する...

crontab スケジュールされたタスクが実行されない理由の分析と解決

序文Linux のスケジュールされたタスクを実装する方法としては、cron、anacron、at な...

Vuex データの永続性を実装するためのアイデアとコード

vuexとはvuex: vue.js専用に開発された状態管理ツールで、すべてのコンポーネントの状態を...

vue3を使用してAppleシステムのサイドメッセージプロンプト効果を模倣する

目次アニメーションプレビューその他のUIライブラリ始めるコンポーネントディレクトリ構造トーストおおよ...

中国語と英語のフォント名の比較表(FounderとArphicを含む)

CSS ファイルでは、フォント名が文字化けしていることがよくあります。これは、作成者が中国語フォン...

CSS でインラインブロック要素間のギャップを削除するいくつかの方法の詳細な説明

最近、モバイルページを制作する際には、レイアウトにインラインブロック要素がよく使われますが、インライ...

Linux環境でログファイルを表示するコマンドの詳細な説明

目次序文1. catコマンド: 2. moreコマンド: 3. lessコマンド: 4. headコ...

el-table カプセル化に基づくドラッグ可能な行と列、および選択列コンポーネントの実装

効果環境が必要ビュー要素UIドラッグアンドドロッププラグインSortable.js必要な構成プロパテ...

MySQL クエリのソートとクエリ集計関数の使用法の分析

この記事では、例を使用して、MySQL クエリのソート関数とクエリ集計関数の使用方法を説明します。ご...

MySQLデータベースでゼロ値を含む日付の問題について簡単に説明します

デフォルトでは、MySQL は日付に 0 値を挿入することを受け入れますが、実際には日付の 0 値に...

Nodejs 組み込み暗号化モジュールを使用してピアツーピアの暗号化と復号化を実現する詳細な説明

暗号化と復号化は、通信のセキュリティを確保するための重要な手段です。すでに多くの暗号化アルゴリズムが...

Windows 10 での MySQL 8.0.20 のインストールと設定方法のグラフィック チュートリアル

Win10システムにMySQL8.0.20をローカルにインストールし、個人的にテストして利用可能であ...

Linux インストール MongoDB の起動と一般的な問題の解決

MongoDB のインストール プロセスと問題記録1. MongoDBのインストールMongoDBを...

Python で pymysql モジュールを使用して MySQL データベースに接続する

pymysqlをインストールするpip install pymysql 2|0pymysqlの使用2...

CSSリンクと@importの違いの詳細な説明

HTML に CSS を追加するにはどうすればいいですか? HTML で CSS を設定する方法は ...