当前位置:首页 » 编程软件 » 脚本获取当前目录

脚本获取当前目录

发布时间: 2023-07-28 18:51:47

A. 怎么让shell脚本获得自己所在目录名

1.使用绝对路径执行的shell文件(如/home/xxx/binfile)
直接使用dirname $0即可
2.对于使用相对路径执行的shell文件(如 ./xxx/binfile)
pwd与dirname结合使用;pwd获得的是执行当前shell文件时,用户所在的位置;dirname可以获得相对于那个位置的偏移:
例如某shell文件所在的位置是/home/user_name/work2/SNS3_server_im/Developing/trunk/im_capp/src/notify_serv/shell文件名

1 #!/bin/sh
2 pwd
3 echo `dirname $0`
执行后输出
/home/user_name/work2/SNS3_server_im/Developing/trunk/im_capp/src
./notify_serv

B. shell获得当前目录名的几种方法

1、我们先登录第一个用户,root。登录后,echo $SHELL。

C. python获取当前路径

来自: https://www.cnblogs.com/wind-wang/p/5822192.html

import os,sys

使用sys.path[0]、sys.argv[0]、os.getcwd()、os.path.abspath( file )、os.path.realpath( file )

sys.path是Python会去寻找模块的搜索路径列表,sys.path[0]和sys.argv[0]是一回事因为Python会自动把sys.argv[0]加入sys.path。

如果你在C: est目录下执行python getpathgetpath.py,那么os.getcwd()会输出“C: est”,sys.path[0]会输出“C: estgetpath”。

如果你用py2exe模块把Python脚本编译为可执行文件,那么sys.path[0]的输出还会变化:
如果把依赖库用默认的方式打包为zip文件,那么sys.path[0]会输出“C: estgetpathlibarary.zip”;
如果在setup.py里面指定zipfile=None参数,依赖库就会被打包到exe文件里面,那么sys.path[0]会输出“C: estgetpathgetpath.exe”。

os.getcwd() “D:”,取的是起始执行目录
sys.path[0]或sys.argv[0] “D:python_test”,取的是被初始执行的脚本的所在目录
os.path.split(os.path.realpath( file ))[0] “D:python_test”,取的是 file 所在文件test_path.py的所在目录

正确获取当前的路径:

D. lua脚本怎么获取当前正在执行的脚本的当前路径

时代在发展科技在进步,互联网已经不是什么神秘的领域,现在越来越多的年轻人对于互联网越来越熟悉,甚至有些开始学习Linux系统方面的知识,下面小猿圈Linux讲师就讲关于如何在Linux系统获取当前工作路,希望对你有所帮助。

获取工作路径这里介绍两种方法:

1、使用getcwd()函数。

头文件:#include

定义函数:char*getcwd(char*buf,size_tsize);

函数说明:getcwd()会将当前的工作目录绝对路径复制到参数buf所指的内存空间,参数size为buf的空间大小。

实例:

voidgetPath()

{

charpPath[256]={0};

getcwd(buf,256);

printf("filePath:%s\n",pPath);

}

主函数调用此函数运行结果:

filePath:/home/myTest

2、使用readlink()函数

头文件:#include<unistd.h>

函数定义:intreadlink(constchar*path,char*buf,size_tbufsiz);

函数说明:此函数会将参数path的符号连接内容到参数buf所指的内存空间,返回的内容不是以NULL作字符串结尾,但会将字符串的字符数返回。若参数bufsiz小于符号连接的内容长度,过长的内容会被截断。成功返回buf长度,失败返回-1。

实例:

voidgetPath()

{

charpPath[256]={0};

intret=-1;

ret=readlink("/proc/self/exe",pPath,256);

pPath[ret]="\0"

printf("thefilePath:%s\n",pPath);

}

intmain()

{

getPath();

}

运行结果:

thefilePath:/home/myTest/a.out

小猿圈Linux讲师提醒大家:每天学习一点技术问题,只要功夫深,铁杵磨成针,学习不是一朝一夕的,是需要付出行动的,而且还要坚持,学习新的技术需要不断的查阅资料,看视频,复习,练习,如果你工作中或者生活中遇到什么问题,可以到小猿圈去寻找答案的,相信会给你满意的答复

热点内容
mysql内存存储 发布:2025-02-05 22:30:39 浏览:569
静态存储区堆栈 发布:2025-02-05 22:09:11 浏览:101
js加密算法 发布:2025-02-05 22:06:35 浏览:230
python3graphics 发布:2025-02-05 21:36:57 浏览:511
为什么英雄联盟一个服务器进不去 发布:2025-02-05 21:36:12 浏览:182
服务器搭建网站开发教材 发布:2025-02-05 21:31:57 浏览:567
pythonrose 发布:2025-02-05 21:31:46 浏览:923
php数组从小到大排序 发布:2025-02-05 21:26:01 浏览:325
单片机存储器扩展 发布:2025-02-05 21:17:35 浏览:966
sqler图 发布:2025-02-05 21:10:58 浏览:630