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

问两个shell细节问题,哪位大侠帮回答一下。

    来源: 互联网  发布时间:2016-11-24

    本文导语:  1、用点的方式运行脚本,如:./test      现在问题是如果运行的脚本写全路径好像系统找不到脚本位置,如当前在/home/目录中,使用./home/mydirect/test  系统提示找不到文件,难道非要我在脚本里切换当前工作目录?...

1、用点的方式运行脚本,如:./test  
   现在问题是如果运行的脚本写全路径好像系统找不到脚本位置,如当前在/home/目录中,使用./home/mydirect/test  系统提示找不到文件,难道非要我在脚本里切换当前工作目录???


2、如果一个字符串中有一个变量MYVAR。整个变量为"abcd$MYVARefgh",问题是这个样写shell不知道变量名在哪里结束吧?那要怎么写?写成 abcd"$MYVAR"efgh  这样么?shell怎么识别一个变量名得结束的?

|
如当前在/home/目录中,使用./home/mydirect/test 系统提示找不到文件,难道非要我在脚本里切换当前工作目录???
---------------------
你的理解错误 ./test 这是执行当前目录下的test ./是当前目录的意思
而你说的全目录也就是绝对路径 一定是从/开始的 所以你的命令应该是
/home/mydirect/test

你说前在/home/目录中,使用./home/mydirect/test  那你其实执行的是/home/home/mydirect/test 知道吗?
所如如果现在要用相对路径的话 应该是./mydirect/test  因为你已经在/home下了

如果你在根目录/下执行./home/mydirect/test是没问题的 因为home就是在/下


2、如果一个字符串中有一个变量MYVAR。整个变量为"abcd$MYVARefgh",问题是这个样写shell不知道变量名在哪里结束吧?那要怎么写?写成 abcd"$MYVAR"efgh 这样么?shell怎么识别一个变量名得结束的?
-----------------------
其实你怀疑是毫无意义的 如果给你2个变量$MYVARefgh和$MYVAR 让你分辨 你如何分辨???

这种情况推荐你标准的写法 ${MYVAR}  即"abcd${MYVAR}efgh"  当然你自己的解决方法也是毫无问题的

|
1 .表示当前目录  ./表示当前目录下的文件
2 abcd${MYVAR}efgh

|
结贴吧

|

这个答案已经写得很详细了,我也不用写了,哈哈

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 两个非常菜的问题,希望各位帮忙回答一下,多谢!!
  • 谁来帮忙回答一下下面两个问题啊
  • 初学QT,问两个问题,希望有人回答
  • C++ MultiMaps 成员 swap():交换两个multimaps
  • 急!有两个char buf[]里面是两个日期(2004-08-02),怎样判断两个日期之间的天数?(只能用标准C)
  • C++ Lists(链表) 成员 merge():合并两个list
  • 一个Statement不能同时打开两个ResultSet?为了同时打开两个,可以考虑建立两个Statement?甚至两个Connection?
  • C++ Lists(链表) 成员 swap():交换两个list
  • Keepalived 能配两个虚拟ip吗,匹配两个数据库实例?
  • C++ Maps 成员 swap():交换两个map
  • 可以有其他两个类的实例同时调用一个java实例的两个方法吗?
  • C++ Vectors 成员 swap():交换两个Vector
  • 两个域名,两个端口,一个服务器……
  • C++ Lists(链表) 成员 splice():合并两个list
  • 你们看是不是可以这样理解:在用来进行两个对象的比较时,==操作符用来比较两个对象的引用地址,而equals()用来比较两个对象的值。
  • C++ Strings(字符串) 成员 swap():交换两个字符串的内容
  • 下载了jbuilder5,是rar格式的,解开后有两个文件,一个是rsc-jb5.bin,一个是rsc-jb5.cue,据说这两个文件是刻光盘的,请问谁知道怎么刻?不会用这两个文件直接安装吧?谢谢!
  • C++ Strings(字符串) 成员 compare():比较两个字符串
  • 基础问题,刚学的!请教,两个日期格式变量,我要求两个日期之间的天数,怎么求?
  • cocos2d中CCSpriteFrameCache文件同时存在两个plist的问题解决
  • 主进程有两个线程,fork子进程后复制主进程两个线程的内存么?
  • 我机器上安装了linux和win2000两个系统,请问如何在两个系统之间切换。
  • linux字符模式下怎样可以运行两个任务(开两个终端)
  • 听说,初学JAVA有两个开源程序是必看的,请问是哪两个。在那里下载?


  • 站内导航:


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

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

    浙ICP备11055608号-3