在linux环境下,常有通过shell脚本进入指定目录的操作,例如有一段脚本chdir.sh:
#!/bin/sh
cd /home/user/Downloads
pwd
在shell环境下通过./chdir.sh执行这段脚本是无法进入Downloads目录的; 这是因为shell在执行脚本时,会创建一个子shell,并在子shell中逐个执行脚本中的指令; 而子shell中从父shell中继承了环境变量,但是执行后不会改变父shell的环境变量;如果想要代码中切换目录的操作生效,只需要通过source 命令执行即可:
source ./chdir.sh
source 命令是在当前的shell环境下执行脚本 ,不会创建子shell;
每次都要输入source是一件烦琐的事情,其实source命令又叫点命令,在需要用到source的情况下,直接换成'.'即可:
. ./chdir.sh
注意两点之间的空格。
---------------------
作者:chogri
来源:CSDN
原文:https://blog.csdn.net/codigger/article/details/9187989
版权声明:本文为博主原创文章,转载请附上博文链接!
相关推荐
可以创建一个包含多个命令的shell脚本(如:`script.sh`),然后通过`adb push`将脚本推送到设备上,再用`adb shell sh script.sh`执行脚本。 6. 源码级操作 对于开发者而言,有时需要在源码层面执行shell命令,...
本文将详细介绍如何通过shell脚本循环进入目录执行命令,这对于处理多项目环境或需要批量设置权限的情况非常有用。 在给定的场景中,有一个/webserver目录,其中包含了多个laravel和thinkphp项目。每个项目都有特定...
在Android平台上,有时候开发者需要超越普通应用程序的权限范围,例如执行系统级别的操作,这就涉及到给APP授权和执行Shell命令。Android系统默认是以安全为优先,不允许应用无限制地执行shell命令,但通过获取Root...
ThinkPHP5(简称TP5)是一个流行的PHP框架,它提供了一种方式来实现这种定时任务,即通过执行shell命令在命令行模式下运行PHP脚本。这个过程涉及到多个知识点,包括TP5的命令行工具、shell命令以及定时任务的设置。 ...
标题中的“JAVA执行shell命令小工具”指的是使用Java编程语言编写的小程序,它能够执行操作系统级别的Shell命令。在Java中,通常使用`Runtime.getRuntime().exec()`或者`ProcessBuilder`类来实现这一功能。这两个类...
首先,我们来看标题中的"linux下批量执行oracle脚本的shell脚本",这指的是在Linux操作系统中,通过编写shell脚本来自动化执行一系列针对Oracle数据库的SQL命令。Shell脚本是Linux系统中的一种强大的自动化工具,它...
二是编写一个shell脚本(如`script.sh`)并将其推送到设备上,然后通过`adb shell sh script.sh`执行。如果在`bat`脚本中遇到进入`shell`后无法执行后续命令的问题,可能是因为没有正确处理命令的执行顺序或权限。...
然而,执行shell脚本时,我们需要指定shell解释器,通常为/bin/bash,如下所示: ```java String scriptPath = "/path/to/your/script.sh"; Process process = runtime.exec("/bin/bash " + scriptPath); ``` 这里...
在Linux系统中,后台执行shell命令是日常系统管理和自动化任务执行的重要组成部分。这些命令允许我们无需保持终端会话打开即可运行程序,极大地提高了工作效率。本文将深入探讨标题中提到的几种后台执行命令,包括`...
本文将详细介绍如何使用Python标准库中的subprocess模块来执行shell命令,并将命令的执行结果保存到字符串变量中以及写入到指定的文件中。 首先,我们来看如何将shell命令执行的结果保存到字符串中。在Python中,...
Shell脚本是一种脚本语言,利用Shell的命令解释的功能,对一个纯文本的文件进行解析,然后执行这些功能。 Shell脚本可以直接使用在Windows、Unix、Linux上面,并且可以调用大量系统内部的功能来解释执行程序。如果...
在Windows环境中使用PyCharm编写Python脚本并执行shell命令时,由于Windows与Linux等其他操作系统的命令差异,会遇到一些特殊的问题。本文将详细介绍如何在Windows环境下通过PyCharm执行shell命令,并解决实际开发...
在Unity开发过程中,有时我们需要与操作系统进行交互,例如执行shell脚本来处理一些特定的任务。但在实际操作中,可能会遇到Unity无法正确调用shell脚本并传递参数的问题。本文将详细介绍如何解决这一问题,并提供一...
此外,Shell脚本还涉及到文件和目录操作,例如创建、删除、移动文件,列出目录内容,改变工作目录等。这些操作对系统管理至关重要。你还会学到如何利用正则表达式进行文本匹配和替换,以及如何通过逻辑运算符和比较...
在这个场景中,我们关注的是如何利用shell脚本来实现特定的功能:根据时间条件导出数据库表数据,计算文件信息,压缩文件,以及通过FTP上传到指定的远程目录。下面将详细阐述这些知识点。 首先,我们需要理解`shell...
以下将详细介绍如何在shell脚本中执行MySQL脚本并传递参数。 首先,我们需要创建一个shell脚本,通常以`.sh`为扩展名。这个脚本会包含执行MySQL命令的逻辑。在shell脚本中,我们可以使用`mysql`命令行客户端来连接...
"Swift-ShellOut"是一个专门针对Swift的库,它使得在Swift脚本或命令行工具中执行shell命令变得异常简单。 Swift-ShellOut库的核心功能是提供了一种优雅的方式来与操作系统 shell 进行交互。在传统的Swift命令行...
"SM专用计算机执行shell脚本方法"这个主题聚焦于如何在特定的SM(可能是特殊用途或安全模式)计算机上运行shell脚本。shell脚本是基于Unix/Linux操作系统的命令行解释器,如Bash,用于编写一系列自动化命令,简化...
### Shell脚本比较两台服务器目录及文件是否一致 在IT运维工作中,经常需要对比不同服务器上的文件或目录是否一致,特别是在对生产环境和测试环境进行对比时尤为重要。本文将详细解析一个用于比较两台服务器目录及...
接下来,我们看看Java代码部分,这部分代码是用于执行shell脚本的: ```java String shfilepath = ServletActionContext.getServletContext().getRealPath("/"+"download/shell/backup.sh"); String exp = "sh " + ...