Bashでディレクトリ名を取得する方法


方法1: basenameコマンドを使用する方法 basenameコマンドは、パスからディレクトリ名を抽出するために使用されます。以下は、basenameコマンドを使用してディレクトリ名を取得する例です。

path="/path/to/directory/"
dir_name=$(basename "$path")
echo "$dir_name"

上記の例では、/path/to/directory/からディレクトリ名を抽出しています。$dir_nameには抽出されたディレクトリ名が格納され、echo文で表示されます。

方法2: dirnameコマンドを使用する方法 dirnameコマンドは、パスからディレクトリ部分を抽出するために使用されます。以下は、dirnameコマンドを使用してディレクトリ名を取得する例です。

path="/path/to/directory/file.txt"
dir_name=$(dirname "$path")
echo "$dir_name"

上記の例では、/path/to/directory/file.txtからディレクトリ部分を抽出しています。$dir_nameには抽出されたディレクトリ名が格納され、echo文で表示されます。

方法3: 文字列操作を使用する方法 Bashの文字列操作機能を使用して、パスからディレクトリ名を取得することもできます。以下は、文字列操作を使用してディレクトリ名を取得する例です。

path="/path/to/directory/"
dir_name="${path%"${path##*[!/]}"}"
echo "$dir_name"

上記の例では、${path%"${path##*[!/]}"}"によってディレクトリ名が抽出されます。${path##*[!/]}はパスの最後のスラッシュから始まる部分を削除し、"${path%"${path##*[!/]}"}"は残ったディレクトリ部分を取得します。

これらの方法を使用することで、Bashスクリプト内でディレクトリ名を取得することができます。選択した方法に応じて、コードを適切に調整してください。