Linux 交互/非交互/登录/非登录 shell 的区别

本文详细介绍了Linux中的交互shell与非交互shell、登录shell与非登录shell的区别,包括它们的定义、区分方法以及在脚本调用中的不同。重点讨论了bash和sh在不同模式下加载的配置文件,强调了这些差异对Linux系统默认选项的影响。
摘要由CSDN通过智能技术生成




一、交互shell 和 非交互shell


1、交互shell

交互式:顾名思义就是 shell 与用户存在交互,
用户登录后,在终端上输入命令,shell 立即执行用户提交的命令。

当用户退出后,shell 也终止了。


2、非交互shell

非交互式:即 shell 与用户不存在交互,而是以 shell script 的方式执行的。

shell 读取存放在文件中的命令, 并且执行它们。
当它读到文件的结尾 EOF,shell 也就终止了。


3、区分方法

可以通过打印 $- 变量的值,并查看其中的 i - interactive 选项来区分交互式与非交互式shell。
比如

:~> echo $-
himBH

有 i - interactive ,所以是 交互式 shell;反之则为非交互式。




二、登录shell 和 非登录shell


1、登录shell

登录 shell 是

  • 8
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值