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

シェルスクリプトの現在のディレクトリ?

ほとんどの回答は現在のパスを取得し、状況に依存します。任意のディレクトリからスクリプトを実行するには、以下のスニペットを使用してください。

DIR="$( cd "$( dirname "$0" )" && pwd )"

サブシェルでディレクトリを切り替えることにより、 pwd を呼び出すことができます コンテキストに関係なく、スクリプトの正しいパスを取得します。

その後、 $DIR を使用できます "$DIR/path/to/file" として


シェル スクリプトの現在の (初期) ディレクトリは、スクリプトを呼び出したディレクトリです。


既に述べたように、場所はスクリプトが呼び出された場所になります。スクリプトがインストールされている場所を参照するようにしたい場合、それは非常に簡単です。以下は、PWD とインストールされたディレクトリを出力するスニペットです:

#!/bin/bash
echo "Script executed from: ${PWD}"

BASEDIR=$(dirname $0)
echo "Script location: ${BASEDIR}"

Linux
  1. 実行時にスクリプトでシェルを決定しますか?

  2. ソースシェルスクリプトへのパスを決定しますか?

  3. シェルスクリプト:ファイルをディレクトリとサブディレクトリに並べ替えますか?

  1. インタラクティブシェルのセッションのプロセスとスクリプトのプロセス?

  2. シェルスクリプトはどこから実行されますか?

  3. $の意味は?シェルスクリプトでは?

  1. 星のピラミッドを出力するシェルスクリプト

  2. Pythonスクリプトを使用してシェルの作業ディレクトリを変更する

  3. 現在のターミナルから新しいターミナルでシェルスクリプトを実行する