2016-07-11 20 views
0

私の作業ディレクトリの外にあるファイルをbashスクリプトの変数に格納する必要があります。私はこのように同じディレクトリにファイルを保存することができます。bash - 作業ディレクトリの外部にファイルを格納する方法

value1 = 'File4' 

しかし、私は私のディレクトリ以外のファイルへのアクセス権を取得したい場合は、私が最初にそのディレクトリを取得するcdを使用する必要がありますか?

+0

'value1 = 'File4''のスペースではできません。 –

答えて

2

絶対パス、つまり/home/user/path/to/my/file.txt、または相対パス:../another_directory_at_the_same_level/file.txtによってファイルにアクセスできます。ダブルドットはスーパーディレクトリを意味します。つまり、現用パスが/home/user/working/pathの場合、..//home/user/workingとなります。

+0

パスを一重引用符で囲むことをお勧めします。 – sjsam

1

まず、現在のディレクトリ(スクリプトの実行元)を計算する必要があります。すると、相対パスで任意のディレクトリにアクセスできます。 like =>$curr_dir/../$value1または$curr_dir/../../$value2など.etc

現在のダイレクトイヤーの取得方法は次のとおりです。

curr_dir=$(dirname $(readlink -f $0))

$0 = >>現在.. value1 = 'File4'は、任意のシンボリックリンクを解決するための引数として

readlink -fパス$0を宣言されているスクリプトをスクリプトをruningて。

dirname返されたフルパスからファイルを削除します。

関連する問題