How to get the Shell script of the directory where the shell script is located
This article mainly explains "how to get the Shell script in the directory where the shell script is located". The content in the article is simple and clear, and it is easy to learn and understand. Please follow Xiaobian's train of thought to study and learn "how to get the Shell script in the directory where the shell script itself is located".
Simple version
The following is the simplest implementation that can solve most problems, but the drawback is that for soft links, the directory where the soft links are located is displayed.
Lineos:false
The code is as follows:
#! / bin/bash
DIR= "$(cd" $(dirname "$0") "& & pwd)"
Perfect edition
This version solves the problem of using ln-s target linkName to create soft links that cannot correctly fetch real scripts.
Lineos:false
The code is as follows:
#! / bin/bash
SOURCE= "$0"
While [- h "$SOURCE"]; do # resolve $SOURCE until the file is no longer a symlink
DIR= "$(cd-P" $(dirname "$SOURCE") "& & pwd)"
SOURCE= "$(readlink" $SOURCE ")"
[[$SOURCE! = / *]] & & SOURCE= "$DIR/$SOURCE" # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located
Done
DIR= "$(cd-P" $(dirname "$SOURCE") "& & pwd)"
Thank you for your reading, the above is the content of "how to get the Shell script in the directory where the shell script itself is located". After the study of this article, I believe you have a deeper understanding of how to get the Shell script in the directory where the shell script is located, and the specific use needs to be verified in practice. Here is, the editor will push for you more related knowledge points of the article, welcome to follow!