我该如何检测运行shell脚本的目录名称(或更好的整个路径)?如何检测我运行我的shell脚本的当前目录?
回答
什么shell?什么操作系统?
对于初学者尝试
man pwd
$PWD
似乎工作,谢谢 – goe 2009-11-30 02:06:29
如果你只想要目录的名称,而不是完整的路径,请阅读man basename。 – 2009-11-30 02:46:04
这不是微不足道,因为它看起来像。退房this question和this
问题是关于确定脚本执行目录,但你的答案是确定脚本文件的名称/目录。 – 2017-03-12 19:44:46
@Mat确实!当时一定误会了。删除。 – 2017-03-12 21:22:22
替代方法
pid=$$
path=$(ps -eo pid,args| awk -vp=$pid '$1~p{print $3}')
case "$path" in
./*) pwd;;
*) echo $path;;
esac
这一点,我相信,这是最简便的方式:
dir=$(cd -P -- "$(dirname -- "$0")" && pwd -P)
- 1. Shell脚本当前目录?
- 2. 检测我如何运行Python脚本
- 3. Shell脚本中的当前目录
- 4. 如何指示脚本的当前目录不是我?
- 5. 从目录运行Shell脚本
- 6. 如何检测我的新贵脚本是否正在运行?
- 7. 脚本始终从当前目录运行/而不是当前目录
- 8. 从当前目录执行Shell脚本而不使用'“./filename”
- 9. 在当前目录中执行shell脚本
- 10. shell脚本为我的代码运行测试用例
- 11. 我的脚本在inline-javascript运行前如何运行?
- 12. 如何检测Node.js脚本是否通过shell管道运行?
- 13. 我可以在ViM中运行当前脚本或脚本吗?
- 14. Python:如何获取正在运行的当前脚本的目录?
- 15. 参考当前目录中的shell脚本
- 16. 你应该改变shell脚本中的当前目录吗?
- 17. 如何在EC2中运行我的shell脚本?
- 18. 如何从我发布的npm包运行shell脚本
- 19. 如何从cron运行的Perl脚本中运行shell脚本?
- 20. 如何检查/检测当我运行新的exe程序?
- 21. 我创建了运行“Power Shell脚本”脚本的函数
- 22. Shell脚本 - 测试目录是存在于当前目录还是父目录/祖先目录中
- 23. 从脚本当前目录中运行Python中的子进程bash脚本
- 24. 运行在同一个目录中的脚本作为当前脚本
- 25. 如何运行,我在命令行运行脚本时指定的目录中的Perl脚本
- 26. windows shell - 如何检测脚本文件放置的当前位置?
- 27. 如何打印我当前目录的父目录的名称
- 28. 我如何检测当前链接的页面通过PHP或Java脚本
- 29. 得到我想要创建一个shell脚本(kill.sh)将决定当前脚本的运行时间(loop.sh,这是我以前运行)在Linux中的bash
对于bash,请参阅:从获取一个bash脚本的源目录内(https://stackoverflow.com/q/59895/55075)。 – kenorb 2017-07-19 18:39:23