对于正在学习linux的你,有没有解决不了的问题呢?特别是有些问题网上也找不到答案,经常要切换到固定的文件夹,于是写了个shell脚本用cd命令切换却发现目录切换不了。下面小猿圈Linux讲师为你讲解shell脚本中cd命令无效的解决方法。

代码如下:

#! /bin/bash

# c.sh

cd /mnt/hgfs/vmshare

pwd

解释:

执行的时候是./c.sh来执行的,这样执行的话终端会产生一个子shell(类似于C语言调用函数),子shell去执行我的脚本,在子shell中已经切换了目录了,但是子shell一旦执行完,马上退出,子shell中的变量和操作全部都收回。回到终端根本就看不到这个过程的变化。

验证解释:

#! /bin/bash

# c.sh

history

cd /mnt/hgfs/vmshare

sleep1 #延迟1s

pwd

首先按照 ./c.sh执行,这时候终端没有切换目录,history执行的结果是空的,说明子shell里面没有历史命令(证明前面的解释是正确的)。

解决方法:

source c.sh或者. ./c.sh,这时候就是直接在终端的shell执行脚本了,没有生成子shell,执行的结果就是输出历史命令,并且切换了目录。

注意上面. ./c.sh .和.中间有个空格!

以上就是小猿圈linux讲师介绍的shell脚本中cd命令无效的解决方法,希望更多学习linux的同学找到适合自己的学习方式以及学习方法linux自学交流1群:819805410,如果想学习编程语言的话可以到小猿圈上观看视频,里面有最新最全面的视频教程。

转载于:https://juejin.im/post/5cf0d638e51d4510a732805d

小猿圈学习Linux之shell脚本中cd命令无效的解决方法相关推荐

  1. Shell脚本中获取命令运行结果、特殊变量使用、条件判断等常用操作

    文章目录 前言 获取命令执行结果 使用反引号 `` ` ``command `` ` ``来执行命令 使用括号组合 $(command) 来执行命令 两种方式的区别 特殊变量使用 $0 $1 $2 . ...

  2. 小猿看图CDN_小猿圈分析Linux运维工程师面试

    原标题:小猿圈分析Linux运维工程师面试 互联网发展到了今天,很多同学都开始学习编程,java.python.linux.html5前端都是现在比较火爆的行业之一,而学习linux前端的同学也是最多 ...

  3. 小猿圈之Linux初学者掌握的基本命令

    自学linux的同学们注意了,现在为了大家更快更好的linux学习,小猿圈的linux老师为大家准备了Linux初学者掌握的基本命令,为你在学习中解决疑难,下面就看一下linux老师为你准备的命令吧. ...

  4. 小猿圈讲解Linux常见的版本

    初学linux的朋友们,如果别人问你linux主流的发行版本有哪些,这时候你千万不要蒙,因为这是linux入门必备的门槛,必须了解的知识,如果你还不了解,那你一定要看看这篇文章,小猿圈Linux老师下 ...

  5. 详解Linux交互式shell脚本中创建对话框实例教程

    详解Linux交互式shell脚本中创建对话框实例教程 本教程我们通过实现来讲讲Linux交互式shell脚本中创建各种各样对话框,对话框在Linux中可以友好的提示操作者,感兴趣的朋友可以参考学习一 ...

  6. 详解Linux交互式shell脚本中创建对话框实例教程_linux服务器

    本教程我们通过实现来讲讲Linux交互式shell脚本中创建各种各样对话框,对话框在Linux中可以友好的提示操作者,感兴趣的朋友可以参考学习一下. 当你在终端环境下安装新的软件时,你可以经常看到信息 ...

  7. linux shell spool,Linux/Unix shell 脚本中调用SQL,RMAN脚本

    Linux/Unix shell脚本中调用或执行SQL,RMAN 等为自动化作业以及多次反复执行提供了极大的便利,因此通过Linux/Unix shell来完成Oracle的相关工作,也是DBA必不可 ...

  8. Linux系统Shell脚本中的echo命令

    Linux系统Shell脚本中的echo命令 echo的作用       输出字符串 格式                  echo  "字符串内容" 一,显示转义字符 转义字符 ...

  9. 【Linux】Shell脚本中的多任务并发执行

    Shell脚本中的多任务并发执行 需求 实现一个脚本能够使用ping检测网络的连通性 可以同时检测多个IP地址, 并且将检测结果输出 分析 正常情况下,Shell脚本中的命令是串行执行的,当一条命令执 ...

  10. Linux shell脚本中的命令正确写法

    shell脚本中的命令需加反引号``

最新文章

  1. Centos6.3下利用changepassword修改samba账户密码
  2. AndroidStudio3.4+Unity2018.3,导出JAR包给UNITY使用
  3. 三十八、Scrapy 下载中间件Middleware
  4. 国二c语言操作题评分标准,全国计算机二级C语言操作题题库.doc
  5. Linux 启动/重启/停止 MySQL 数据库的命令
  6. python 西门子交换机_python读取交换机
  7. unity 渐变消失_Unity3D实现渐变颜色效果|chu
  8. 动态规划——节点选择(蓝桥杯试题集)
  9. linux 命令如何输入,Linux 命令行输入
  10. c语言寻找最小路集,寻找一个准确的方法来用C语言编写微基准小的代码路径++和在Linux / OSX上运行...
  11. 寒武纪“动荡”的 6 周年:CTO 梁军离职,市值蒸发 59 亿,核心技术人才仅剩 3 人
  12. bim webgl 模型 轻量化_BIM模型轻量化是什么?BIM模型轻量化原理
  13. 1.《天空之城》- 尤克里里指弹入门版
  14. js获取元素相对于父级元素的高度
  15. 一个有趣的字符滚动GIF动态验证码识别
  16. C++ __builtin_函数
  17. oracle怎么生成osf,Oracle技术之Linux 建立软raid
  18. (个体户)注册公众平台步骤
  19. python写窗体程序_python写窗口
  20. javascript显示本地服务器图片,JavaScript图片本地预览功能的实现方法

热门文章

  1. Linux使用/proc/stat计算CPU使用率
  2. (二)MySQL调优之-EXPLAIN关键字
  3. Linux启动tomcat带控制台
  4. [NOI 2010]超级钢琴
  5. 我的oh my zsh主题
  6. angular6、7 兼容ie9、10、11
  7. 12-8下午 php语法
  8. BS CS 优缺点比较 及 适应场合 (部分转载+个人见解)
  9. photon四种同步方式_Map 四种同步方式的性能比较
  10. python常用的库介绍_Python的标准库介绍与常用的第三方库