当前位置:  技术问答>linux和unix

路径问题

    来源: 互联网  发布时间:2015-12-02

    本文导语:  脚本如何取得本身的全路径 | 内嵌 shell命令pwd,例如: 在编译的时间应该使用Makefile文件: ifneq ($(KERNELRELEASE),)         obj-m := hello.o else         KERNELDIR ?=/lib/modules/$(shell uname -...

脚本如何取得本身的全路径

|
内嵌 shell命令pwd,例如:
在编译的时间应该使用Makefile文件:
ifneq ($(KERNELRELEASE),)
        obj-m := hello.o
else
        KERNELDIR ?=/lib/modules/$(shell uname -r)/build
        PWD := $(shell pwd)
default:
        $(MAKE) -C $(KERNELDIR) M=$(PWD) modules
endif
其中的     PWD := $(shell pwd)
当然也得看你的脚本种类,这里只是给你一个提示

|
绝对路径好办,
echo $(dirname $(cat /proc/$$/cmdline))
就可以了, 但是相对路径会带入shell本身, 这个不好办

|
忘了加上bang头

#!/bin/sh

shell=/bin/sh
cmd=
cmdline=$(cat /proc/$$/cmdline)
pwd_cmdline=${cmdline#*$shell}
if [ $(echo $pwd_cmdline|cut -c 0-1) != '/' ]; then
cwd=$(dirname $PWD"/"$pwd_cmdline)
else
cwd=$(dirname $pwd_cmdline)
fi

echo $cwd

|
又改了改

口胡,终于改好了。
不过方法很dirty, 需要一个声明一个变量表示当前shell

shell=/bin/sh
cmd=
cmdline=$(cat /proc/$$/cmdline)
pwd_cmdline=${cmdline#*$shell}
if [ $(echo $pwd_cmdline|cut -c 0-1) != '/' ]; then 
        cwd=$(dirname $PWD"/"$pwd_cmdline)
else
        cwd=$(dirname $pwd_cmdline)
fi

echo $cwd

如果你要改为#/bin/bash的话, 那么shell变量也要改为/bin/bash

|
哎, 是你复制的时候丢掉最后的换行符, 在最后加上回车就行了
下面是个修正版

#!/bin/bash

shell=/bin/bash
cmdline=$(cat /proc/$$/cmdline)
pwd_cmdline=${cmdline#*$shell}
if [ $(echo $pwd_cmdline|cut -c 0-1) != '/' ]; then
cwd=$(dirname $PWD"/"$pwd_cmdline)"/"
else
cwd=$(dirname $pwd_cmdline)"/"
fi

echo $cwd


    
 
 

您可能感兴趣的文章:

  • 网站图片路径的问题:绝对路径/虚拟路径
  • 请教一个相对路径和绝对路径的问题
  • 菜鸟问题:怎样正确设置jdk路径及class路径?
  • 关于读取文件夹,并取得文件夹路径,再把路径信息存入文件中的问题!
  • 有关文件路径的简单问题
  • jsp 虚拟路径问题 help!!!!!!!!!!!!!!!!!!!!
  • jni的一个小问题--路径问题?
  • jsp:forward,路径问题,请邦我
  • 关于路径问题?
  • QT安装的路径问题(在线等!)
  • linux下文件引用的路径问题。
  • vim路径补全的问题
  • 关于javabean中的对文件进行操作的路径问题?
  • 库文件路径设置问题
  • 绝对路径问题
  • sql server 复制路径出问题的解决方法
  • jsp文件访问jar文件,路径问题。
  • 帮帮我。关于类路径的问题(import的问题)
  • 操作系统 iis7站长之家
  • 在android开发中尽量不要使用中文路径的问题详解
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Linux下指定运行时加载动态库路径及shell下执行程序默认路径
  • 相对路径 绝对路径
  • *****如何更改带有子路径和子文件的路径名????**
  • unix主机下tar路径,不tar路径下文件
  • 如何把当前路径加入查找路径中?立即给分!
  • 如何用JAVA获得当前执行文件所在的目录路径,和系统目录路径(c:winnt)
  • cpio压缩文件绝对路径怎么解到指定路径
  • 请问: 想让一个执行文件 不写相对路径,在任何路径下,都能执行,该怎么做啊?
  • 如何把 -I 选项里面的路径加入到系统路径?
  • linux下面怎么设置公共路径阿。想让每个人登陆后都可以使用这个路径里面的命令
  • 怎么把root的路径考到某用户路径去。
  • 只知mount路径,怎样显示出实际路径
  • 没有路径的情况下创建的文件的默认路径是和程序生成可执行文件在同一个目录中是吗?。
  • 列出该shell的搜索路径。如果搜索路径中不包括当前目录和
  • 如何得到jsp所在的物理路径和web虚拟路径?
  • 请问在jsp中如何实现相对路径?我在jsp文件中指定相对路径的文件,可是程序找不到!
  • 在TOMCAT中,怎样设虚拟路径为默认的路径啊!!
  • 【伸手党】请教如何删除当前路径下的所有软链接文件!不用递归。当前路径。
  • C# 相对路径与系统路径
  • 在Bean中如何表示路径,我想读服务器的web目录下的一个文件,该如何写?(虚路径)
  • 在J++Builder7里如何去掉一个带路径的文件名的路径部分,返回不含路径部分的文件名?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3