元の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のすべてのテーブルを素早く削除する方法

推薦する

Bash で山括弧を使用するその他の方法

序文この記事では、山括弧のその他の用途をさらに詳しく見ていきます。前回の記事では、山括弧 (<...

CSS3 を使用して入力複数選択ボックスのスタイルをカスタマイズする例

原則: まず入力要素を非表示にし、次に CSS を使用してラベル要素のスタイルを設定します (他の要...

MySQL と Golan 間の従来の分散トランザクションのための 7 つのソリューション

目次1. 基本理論1.1 取引1.2 分散トランザクション2. 分散トランザクションソリューション2...

Dockerイメージをパッケージ化し、リモートサーバーにプッシュしてk8sにデプロイする方法

目次1. Dockerファイル2. pom 構成3. イメージプッシュ4. k8s デプロイメント前...

docker run 起動パラメータ コマンドを表示する方法 (推奨)

runlike を使用してコンテナの docker run 起動パラメータを表示します。 pipを...

MySQL データベース分離レベルと MVCC の詳細な説明

目次1. 分離レベルコミットされていない読み取りREAD COMMITED (コミット読み取り/非反...

nginx+php-fpm サービスの HTTP ステータス コード 502 の詳細な分析

弊社の Web プロジェクトの 1 つでは、新しい都市の増加によりトラフィックと DB 負荷が増加し...

Centos8 に nginx1.9.1 をインストールする詳細な手順

1.17.9 本当はもっと美味しいNginx のダウンロード アドレス: https://nginx...

Vueプロジェクトでよく使われる実践的なスキルのまとめ

目次序文1. マルチレベルのデータとイベントの配信には$attrsと$listenersを使用する2...

Excelアップロード機能を実現するVue + iViewの完全コード

1. HTML部分 <Col span="2">ファイルをアップロー...

jQueryブリージングカルーセルの制作原理を詳しく解説

この記事では、jQueryブリージングカルーセル制作原理の具体的なプロセスを参考までに紹介します。具...

CSS3 のエラスティック レイアウトでの em の使用の概要: 1em は何ピクセルですか?

私は長い間 CSS を使用してきましたが、Web 要素の関連属性を設定するために常に「px」を使用し...

Mysql 更新マルチテーブル共同更新方法の概要

次に、2 つのテーブルを作成し、一連の SQL 文を実行します。SQL 文の実行後にテーブル内のデー...

ろうそくを溶かす(水滴)サンプルコードを実現する純粋な CSS

成果を達成する実装のアイデアフィルターのコントラストとぼかしを利用して溶ける効果を実現します。親要素...

mysql は sql ファイルを実行し、エラーを報告します エラー: 不明なストレージ エンジン 'InnoDB' ソリューション

問題を見つける最近、仕事で問題が発生しました。InnoDB タイプの SQL ファイルを実行すると、...