位置: 编程技术 - 正文
推荐整理分享Linux系统中获取路径的文件名的方法(linux系统获取ip地址),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:Linux系统中获取root权限如何查看root密码,Linux系统中获取pki为100进城监听的tcp,Linux系统中获取pki为100进城监听的tcp,Linux系统中获取pid为888的进程所监听的tcp端口,Linux系统中获取pid为888的进程所监听的tcp端口,Linux系统中获取pid为888的进程所监听,Linux系统中获取pid为888的进程所监听的tcp端口,Linux系统中获取pid为888的进程所监听,内容如对您有帮助,希望把文章链接给更多的朋友!
复制代码代码如下:[root@dabu.info ]#basename /root/aaa/bbb/dabu.txt显示:复制代码代码如下:dabu.txt #获取路径的文件名
shell脚本中如何获得脚本文件所在路径?
方法一:
复制代码代码如下:[root@dabu.info ]#DIR=$(cd "$(dirname "$0")"; pwd)</p><p>[root@dabu.info ]#echo $DIR
但是像这种dirname "$0"这种写法,在遇到source命令时会得到错误的结果。
方法二:
复制代码代码如下:[root@dabu.info ]#echo "$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
上面一行命令可以获得脚本的绝对轮径,无论你在何处调用这个脚本。但是如果含有软链接,就无法使用了。所以,我们为了能正确解析指向脚本的软链接,可以使用下面的多行命令:
复制代码代码如下: SOURCE="${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 )"
也可与source,bash -c命令使用
但是,如果你在脚本中使用先cd切换到其他目录,在运行时上面的命令片段时,则上面的命令不能等到正确的结果。可以参考关于$CDPATH 陷阱的文章。想理解它如何其作用的,可以运行下面的代码:
复制代码代码如下: #!/bin/bash</p><p> SOURCE="${BASH_SOURCE[0]}" while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink TARGET="$(readlink "$SOURCE")" if [[ $SOURCE == /* ]]; then echo "SOURCE '$SOURCE' is an absolute symlink to '$TARGET'" SOURCE="$TARGET" else DIR="$( dirname "$SOURCE" )" echo "SOURCE '$SOURCE' is a relative symlink to '$TARGET' (relative to '$DIR')" SOURCE="$DIR/$TARGET" # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located fi done echo "SOURCE is '$SOURCE'" RDIR="$( dirname "$SOURCE" )" DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )" if [ "$DIR" != "$RDIR" ]; then echo "DIR '$RDIR' resolves to '$DIR'" fi echo "DIR is '$DIR'"
使用find命令查找Linux中的隐藏文件的方法 我们可以在Linux或者Unix系统上使用find命令去查询所有(全部)隐藏文件基本语法如下:复制代码代码如下:[root@dabu.info~]#find/要查找的文/件/夹/-name".*"-print
Linux中的find命令使用时的一些注意点整理 find命令中用了-path参数,则文件名是匹配shell通配符模式。这时候,元字符不能识别'/'和'.'。举个例子假设/root目录下有四个文件,其绝对路径分别为:
在Linux系统上升级OpenSSL的方法 我是用的Centos,目前官方说受威胁的版本是1.0.1f,1.0.1e,1.0.1d,1.0.1c,1.0.1b,1.0.1a,1.0.1。在OpenSSL1.0.1g版本中Heartbleed漏洞被修复。所有centos6.5的系统运行OpenSSL1.0
标签: linux系统获取ip地址
本文链接地址:https://www.jiuchutong.com/biancheng/365456.html 转载请保留说明!友情链接: 武汉网站建设