首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

什么在Bash中开始新的子shell?

在Bash中,通过以下方式可以开始一个新的子shell:

  1. 使用bash命令:
代码语言:txt
复制
bash

这将在当前shell中打开一个新的子shell。

  1. 使用sh命令:
代码语言:txt
复制
sh

这将在当前shell中打开一个新的子shell,但是它将使用sh命令作为默认的shell。

  1. 使用source命令:
代码语言:txt
复制
source script.sh

这将在当前shell中执行script.sh文件中的命令,而不是打开一个新的子shell。

  1. 使用exec命令:
代码语言:txt
复制
exec bash

这将在当前shell中打开一个新的子shell,并将当前shell替换为新的子shell。

  1. 使用command命令:
代码语言:txt
复制
command bash

这将在当前shell中打开一个新的子shell,并忽略任何别名或函数,以确保执行的是原始的bash命令。

  1. 使用$()语法:
代码语言:txt
复制
$(bash)

这将在当前shell中打开一个新的子shell,并将其输出作为当前shell的输入。

  1. 使用&符号:
代码语言:txt
复制
bash &

这将在后台打开一个新的子shell,并允许当前shell继续执行其他命令。

  1. 使用nohup命令:
代码语言:txt
复制
nohup bash

这将在当前shell中打开一个新的子shell,并确保即使父shell关闭,子shell也会继续运行。

  1. 使用screentmux命令:
代码语言:txt
复制
screen

代码语言:txt
复制
tmux

这将在当前shell中打开一个新的子shell,并允许您在多个会话之间切换。

  1. 使用ssh命令:
代码语言:txt
复制
ssh user@host

这将通过SSH连接到远程主机,并在远程主机上打开一个新的子shell。

请注意,这些方法中的大多数都不是特定于Bash的,而是适用于大多数Unix shell。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Bash shell ,三种 shell 实践

Bash shell ,三种 shell 实践 一 背景 让我们先来看一下下面这个简单例子: #!...脚本开始时,我们使用一个随机数对 test_num 进行了赋值,在当前脚本值是 1457 。在三种 shell 执行过程,test_num 传入了 shell ,依然为 1457 。...三种方式都出奇一致,这说明: shell 执行过程能引用父 shell 变量,父 shell 变量 shell 中被修改后不返回父 shell ,作用域只存在于 shell 。...简而言之,父 shell 值能被子 shell 调用,父 shell 变量能被子 shell 修改, shell 变量值不能传回父 shell 。 继续分析,“& test end....进一步观察,我们发现,& shell 和 | shell 执行结果混在一起了。而 () shell 却中规中矩按照预期执行。这是为什么呢?

40530

bashexport命令作用是什么_bash:no such file or directory

大家好,又见面了,我是你们朋友全栈君。 export export命令将会使得被 export 变量在运行脚本(或shell)所有的进程中都可用....不幸是,没有办法将变量export 到父进程(就是调用这个脚本或shell 进程)....关于export 命令一个重要使用就是用在启动文件,启动文件是用来初始化并且 设置环境变量,让用户进程可以存取环境变量 脚本不能export(导出)变量到它父进程(parent process)...bash echo WHATEVER bash 可以确定, 回到命令提示符, WHATEVER 变量仍然没有设置....SHELL(subshell)设置和操作变量 , 然后尝试 SHELL 作用范围外使用相同名变 量将会导致非期望结果. 版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。

3.1K20

Bash shellbash、sh、source及“.”区别与联系

众多Linux发行版bash shell 可谓是随处可见。作为众多发行版首选shell,对于bash shell学习对我们来说,显得格外重要。...在学习bash shell过程bash、sh、source及英文输入状态下点号经常交替出现,他们看起来作用都差不多,但是深究下去,他们也有着不小区别与联系。...查看shell历史我们可以知道,我们通常所说bash shellbash)全称为GNU Bourne-Again SHell目前发行版,sh已经成为bash一个软连接。...man sh时候大家都会发现,其实man出来手册时bash内容。...四、结论 bash与sh在对于脚本执行来说,效果一致,不继承除了当前shell之外变量值。无空格“.”且有执行权限脚本执行,效果与bash及sh一致。

76910

Bash shell脚本如何检查一个目录是否存在

问: Bash shell 脚本什么命令检查某个目录是否存在?...如果不考虑符号链接到目录情况,后续命令可能无法按预期工作,因为符号链接也会通过这个检查。... Unix 早期设计,许多系统资源都被抽象为文件,以实现统一和一致接口处理,这样程序员可以使用相同系统调用来操作不同资源,如普通文件、目录、设备等。...这种哲学影响了许多 Unix-like 操作系统,包括 Linux。 这里顺便整理一下 Bash 对文件各种测试: -a file -- 如果文件存在则为真。...参考文档: stackoverflow question 59838 https://www.gnu.org/software/bash/manual/bash.html#Bash-Conditional-Expressions

16510

Bash Shell 单引号和双引号区别

引号是 Linux shell “特殊功能”,它可能会让人感到困惑,特别是如果您不熟悉 Linux 命令和 shell 脚本。 我将解释不同类型引号字符及其 shell 脚本用法。...同时,它还显示了文件结果cricket。 这就是报价来拯救地方。当您将参数括引号时,它被解释为单个实体。...让我们 shell 声明一个变量,如果用 $ 回显变量名称,它会显示变量值。...以下面的示例为例,其中$5被视为未声明变量,因此它没有值。这就是为什么从echo 命令输出忽略它原因。...反引号 此列表最后一个是反引号,它具有特殊含义。它用于命令替换。 shell 具有此命令替换功能,其中指定命令被替换为命令输出。

3.3K50

Linux系统安全 | LinuxShellBash

我们学习linux时,经常会遇到bashbash也是指的是某个服务器权限。那么,这两者有什么区别和联系呢?...所以,我们就不难理解Linuxshell有多种类型了吧,这其中最常用几种是 Bourne shell(sh)、Bourne Again shell(bash) 和 Debian Almquist...bash bash (Bourne Again shell),它是Linux操作系统缺省shell,是Bourne shell扩展,简称Bash,与Bourne shell完全向后兼容,并且Bourne...Bash放在/bin/bash ,它有许多特色,可以提供如命令补全、命令编辑和命令历史表等功能,有灵活和强大编程接口,同时又有很友好用户界面。...而且Redhat系列Linux 操作系统 /bin/sh 是 /bin/bash 符号链接。所以,用 sh执行脚本和bash 执行脚本,效果是一样。所以我们通常会在脚本第一行写 #!

1.6K20

Linux系统安全 | LinuxShellBash

学安全我们,经常会听到说获得某服务器shell,就是指获得某个服务器操作权限。我们学习linux时,经常会遇到bashbash也是指的是某个服务器权限。那么,这两者有什么区别和联系呢?...所以,我们就不难理解Linuxshell有多种类型了吧,这其中最常用几种是 Bourne shell(sh)、Bourne Again shell(bash) 和 Debian Almquist...bash bash (Bourne Again shell),它是Linux操作系统缺省shell,是Bourne shell扩展,简称Bash,与Bourne shell完全向后兼容,并且Bourne...Bash放在/bin/bash ,它有许多特色,可以提供如命令补全、命令编辑和命令历史表等功能,有灵活和强大编程接口,同时又有很友好用户界面。...而且Redhat系列Linux 操作系统 /bin/sh 是 /bin/bash 符号链接。所以,用 sh执行脚本和bash 执行脚本,效果是一样。所以我们通常会在脚本第一行写 #!

2.9K10

shell脚本】$ shell脚本使用

shell脚本 '$' 与不同符号搭配其表示意义也会不同 特殊标志符 含义 $0 当前脚本文件名 $n 传递给脚本或函数参数。n 是一个数字,表示第几个参数。...例如,第一个参数是$1,第二个参数是$2 $# 传递给脚本或函数参数个数 $* 传递给脚本或函数所有参数 $@ 传递给脚本或函数所有参数 $?...上个命令退出状态 $$ 当前Shell进程ID $() 与 `(反引号) 一样用来命令替换使用 ${} 引用变量划分出边界 注释:$* 和 $@ 都表示传递给函数或脚本所有参数,不被双引号(" "...)包含时,都以"$1" "$2" … "$n" 形式输出所有参数。.../bin/bash echo "file name $0" echo "first param $1" echo "pid $$" echo "total num of param $#" echo

6.1K20

bash shell参数展开(Shell Parameter Expansion):替换变量(variable)字符串

bash shell脚本时,如果遇到要替换变量字符串,首先想到就是用sed命令,比如下面的示例将变量str数字123替换成UUU: $ str=hello,word,123 $ echo...$str | sed -E -e 's/[0-9]/U/g' hello,word,UUUU 上面的例子中用到echo,sed两个命令来实现字符串替换,略显麻烦 其实bash提供了更简单语法来实现上面的功能...# 如果只是要替换最后一个出现数字则这样写 hello,word,U23 $ echo ${str/%[0-9]/U} hello,word,12U 以上雕虫小技都来自于GNU bash shell手册...《Shell-Parameter-Expansion(Shell参数展开)》章节 https://www.gnu.org/savannah-checkouts/gnu/bash/manual/bash.html...#Shell-Parameter-Expansion 上面只是《Shell参数展开》一小部分功能应用示例, 关于《Shell参数展开》官方文档中提供了远比上面内容更丰应用方式,建议看看原文档你能找到更多有用技巧

3.7K20

Bash $* 和 $@ 有什么区别

问: 许多 SO 问题和 bash 教程,我看到我可以通过两种方式 bash 脚本访问命令行参数: $ cat testargs.sh #!...什么时候应该使用前者,什么时候应该使用后者? 答: Bash ,* 和 @ 都用于引用传递给脚本或函数所有参数。 当没有双引号包围时,$* 和 $@ 行为是相同。...3 bash ,"$@" 是要遍历“默认”列表: $ for word; do echo "$word"; done arg 1 arg 2 arg 3 那么估计有同学要问了,有没有需要..." 有的,需要以特定方式合并参数时," 假设你想要创建一个字符串,其中包含传递给脚本所有参数,且参数之间由逗号(而不是默认 IFS 分隔符)连接。.../bin/bash # 错误方式:"$@" 不会按预期合并参数 result="$@" echo "Using \"\$@\": ${result}" # 正确方式:更新 IFS 后,"$*"

14810

Shell-aliasShell脚本使用

概述 shell开启alias 实际操作 概述 众所周知,shell脚本使用是非交互式方式,非交互式模式下alias扩展功能默认是关闭,此时虽然可以定义alias别名,但是shell不会将alias...别名扩展成对应命令,而是将alias别名本身当作命令执行,如果shell内置命令和PATH均没有与alias别名同名命令,则shell会找不到指定命令。...---- shell开启alias 使用shell内置命令shopt命令来开启alias扩展选项。...默认是打开非交互式模式下是关闭,但可以用可shopt来将其开启 shopt -s expand_aliases ---- 实际操作 我们项目中某个模块双机启动脚本(root用户下操作),...项目启动中会依赖一些环境变量,所以双机启动脚本需要显式引入.bash_profile文件。 所以我们将 开启alias命令放在 .bash_profile

2.2K10

Bash shellbash、sh、source及“.”点等五种执行方式区别与联系

欢迎转载,转载请注明出处,谢谢 众多Linux发行版bash shell 可谓是随处可见。作为众多发行版首选shell,对于bash shell学习对我们来说,显得格外重要。...在学习bash shell过程bash、sh、source及英文输入状态下点号经常交替出现,他们看起来作用都差不多,但是深究下去,他们也有着不小区别与联系。...查看shell历史我们可以知道,我们通常所说bash shellbash)全称为GNU Bourne-Again SHell目前发行版,sh已经成为bash一个软连接。...四、结论 bash与sh在对于脚本执行来说,效果一致,不继承除了当前shell之外变量值。无空格“.”(相对路径)、绝对路径且有执行权限脚本执行,效果与bash及sh一致。...bash、sh、不带空格点(相对路径)或绝对路径,脚本是进程执行source及带空格点中,脚本是父进程执行,差别很大。

3K10

说说Shell代码重构应用

,所以今天我要说说Shell代码重构应用。...先来个简单,假设我们要把PHP文件foo_bar全都替换成fooBar,那么可以如下: 方法一,使用Sed: shell> find /path -name "*.php" -print0 | xargs...> 动手前,我们需要先摸摸底,了解一下大概情况: shell> grep -I -ri includeClass /path | more 其中,grep命令参数乍一看不好记,不过只要按照我说方法记...另外程序是通过生成一个唯一临时文件来完成保存。...提醒:直接覆盖原始文件有时候并不合适,毕竟可能有没考虑周详地方,使用SVN的话就不会有这样顾虑了,因为即便覆盖了原始文件,也可以提交前通过“svn diff”命令来检查对错,就算是提交了,也可以恢复到以前版本

60440
领券