このエントリーをはてなブックマークに追加


ファイルがシンボリックリンクかどうか判別する方法

ファイルが実体ファイルなのか、シンボリックリンクなのかを確認する方法を以下に記します。
尚、利用したシェルは bash になります。


-L によりシンボリックリンクかどうかを判別する

以下にサンプルスクリプトを記します。
動作内容は、foo.txtファイルを作成し、bar.txtシンボリックリンクを作成したあと、-Lの使用例を記しています。
処理終了後、作成したファイルは削除しています。

サンプルスクリプト

#!/bin/bash

echo "test" > foo.txt
if [ ! -L foo.txt ]; then
  echo foo.txt is not symbolic link
else
  echo foo.txt is symbolic link
fi

ln -s foo.txt bar.txt

if [ -L bar.txt ]; then
  echo bar.txt is symbolic link
else
  echo foo.txt is not symbolic link
fi

rm bar.txt foo.txt

サンプルスクリプト 実行結果

$ chmod +x sample-01.sh 
$ ./sample-01.sh 
foo.txt is not symbolic link
bar.txt is symbolic link

関連資料



添付ファイル: filesample-01.sh 77件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2015-03-20 (金) 22:27:01