シンボリックリンクの宛先を読み取り、宛先を1ずつ増やします。

シンボリックリンクの宛先を読み取り、宛先を1ずつ増やします。

私のフォルダ構造は次のとおりです

/some/folder/1
/some/folder/2
...

currentフォルダの1つへのシンボリックリンク。可能ですか?リンクの宛先を読み取るとき、最後のフォルダの名前を増やし、その番号でフォルダを作成します。たとえば、/some/folder/2最後の番号が何であるかを知るために指すリンクを読み、2この番号を増やして生成します。/some/folder/3新しいファイルを保存する新しいファイルフォルダ?

リンク先を読むスクリプトはすでにありますが、パスの最後の部分(番号)を取得して追加する方法がわかりません。

ベストアンサー1

readlinkシンボリックリンクの宛先を取得するために使用されます。

target=$(readlink $1)

次に、シェルの機能を使用して、最後のものより前のすべてを削除します/

id=${target##*/}

または最後のもの以降のすべてを削除してください/

base=${target%/*}

次に、シェルの機能を使用して単純な算術を実行します。

newid=$((id+1))

最後にお互いに貼り付けます。

newtarget=${base}/${newid}

または1行:

newtarget=${target%/*}/$((${target##*/}+1))

おすすめ記事