shell的各种运行模式?
交互式shell和非交互式shell,login shell和non-login shell。首先,这是两个不同的维度来划分的,一个是是否交互式,另一个是是否登录。。
交互式模式就是shell等待你的输入,并且执行你提交的命令。
非交互式模式,脚本。
login shell:是需要用户名、密码登录后才能进入的shell(或者通过”–login”选项生成的shell)
- 登录系统时获得的顶层shell,无论是通过本地终端登录,还是通过网络ssh登录。这种情况下获得的login shell是一个交互式shell。
- 在终端下使用--login选项调用bash,可以获得一个交互式login shell。
- 在脚本中使用--login选项调用bash(比如在shell脚本第一行做如下指定:#!/bin/bash --login),此时得到一个非交互式的login shell。
- 使用"su -"切换到指定用户时,获得此用户的login shell。如果不使用"-",则获得non-login shell。
non-login shell:当然就不需要输入用户名和密码即可打开的Shell,例如:直接命令“bash”就是打开一个新的非登录shell,在Gnome或KDE中打开一个“终端”(terminal)窗口程序也是一个非登录shell。
non-login shell与login shell的主要区别在于它们启动时会读取不同的配置文件,从而导致环境不一样。login shell启动时首先读取/etc/profile全局配置,然后依次查找~/.bash_profile、~/.bash_login、~/.profile三个配置文件中的一个,并且读取第一个找到的忽略余下的。login shell退出时读取并执行~/.bash_logout中的命令。
交互式的non-login shell启动时读取~/.bashrc资源文件。非交互式的non-login shell不读取上述所有配置文件,而是查找环境变量BASH_ENV,读取并执行BASH_ENV指向的文件中的命令。
(1)login shell读取的配置文件
/etc/profile 该文件来设置系统的整体环境,通常是一些环境变量的配置。
~/.bash_profile或~/.bash_login或~/.profile三者中的一个,该文件是用户个人设置(2)non-login shell读取的配置文件
~/.bashrc
通常我们要定制一些配置时,将配置写在~/.bashrc中,然后在~/.bash_profile中读取~/.bashrc,这样可以保证login shell和交互式non-login shell得到相同的配置。至于/etc/profile就不要轻易去改啦,毕竟会影响系统全局的配置。
转载于:https://www.cnblogs.com/naodong/p/6940785.html
shell的各种运行模式?相关推荐
- Spark运行模式Local+Standalone+Yarn+mesos
Spark运行模式Local+Standalone+Yarn+mesos bin/spark-submit --help 注意: --master MASTER_URL spark://host:po ...
- Linux 中启用 Shell 脚本的调试模式
shell 脚本调试系列 Linux 中启用 Shell 脚本的调试模式 在 Shell 脚本中执行语法检查调试模式 在 Shell 脚本中跟踪调试命令的执行 概述 脚本是存储在一个文件的一系列命令. ...
- php是isapi运行模式,php isapi运行模式
PHP 5大运行模式 做 php 开发的应该都知道 php 运行模式概念吧,本文将要和大家分享的是关于php目前比较常见的五大运行模式:包括cgi .fast-cgi.cli.isapi.apache ...
- PyCharm编写shell脚本无法运行
背景 我们常常选择使用PyCharm在本地(Windows)进行开发,然后将文件远程同步到远程服务器(Linux)运行程序,但是这样编写的shell脚本常常无法运行,出现语法错误,因为好几个朋友和我提 ...
- laravel log 对象_swoole运行模式加速laravel应用的详细介绍(life)
本篇文章给大家带来的内容是关于swoole运行模式加速laravel应用的详细介绍,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 我的官方群点击此处. 一.Swoole Swoole ...
- PHP目前比较常见的五大运行模式
运行模式 关于PHP目前比较常见的五大运行模式: 1)CGI(通用网关接口/ Common Gateway Interface) 2)FastCGI(常驻型CGI / Long-Live CGI) 3 ...
- PHP 五大运行模式
查看当前php 运行模式 php_sapi_name(); 运行模式 关于PHP目前比较常见的五大运行模式: 1)CGI(通用网关接口/ Common Gateway Interface) 2)Fas ...
- 【spark】Spark环境搭建(运行模式)
一.local本地模式 解压重命名 cd /export/servers tar spark-2.2.0-bin-2.6.0-cdh5.14.0.tgz mv spark-2.2.0-bin-2.6. ...
- [ hadoop ] hadoop入门 : 组成架构.环境搭建.运行模式
1 大数据概论 概念: 指无法在一定时间范围内用常规软件工具进行捕捉.管理和处理的数据集合,是需要新处理模式才能具有更强的决策力.洞察发现力和流程优化能力的海量.高增长率和多样化的信息资产. 需求: ...
最新文章
- 学习ui设计的流程是什么
- element怎么设置复选框属性_【JavaScript 教程】DOM——属性的操作
- mysql差异备份实现_结合Git实现Mysql差异备份,可用于生产环境
- Java笔记-Spring-rabbitmq中设置receiveMessage参数为Message
- 线性表:链栈算法实现
- 剑指Offer之平衡二叉树
- 计算机基础win7桌面操作,windows7基本操作方法(零基础的人教学)-win7教程
- Android提供了哪些主要UI控件,Android必备:Android UI控件的了解与学习
- Unity3D编译器汉化
- 前有狗屁不通文章生成器 | 后有申论生成器
- bat自动输入密码_如何给电脑文件夹设置密码?一学就会
- 为什么要避免使用malloc()和free()函数?
- 如何判断时间复杂度和空间复杂度
- 韩博士一键重装win8系统的图文步骤
- matlab a律非均匀量化,均匀量化和A律PCM非均匀量化实验.doc
- jones 的 C语言复习
- COPC酞菁钴,cAS号:3317-67-7磺化酞菁钴 催化剂 深蓝色粉末 磺化酞菁钴
- 如何将WORD中的公式转为图片
- 德鲁克经典管理学书籍
- 反病毒工具-火绒剑 博客
热门文章
- zip压缩多个文件,解压时不包含目录层级
- TFRecord tf.train.Feature
- Python 函数参数有冒号 声明后有- 箭头 返回值注释 参数类型注释
- CRF(条件随机场)与Viterbi(维特比)算法原理详解
- PyTorch官方中文文档:torch.optim 优化器参数
- Pandas库常用函数和操作
- 在idea使用maven工程建立web项目时,启动Tomcat访问不到项目首页。
- LeetCode简单题之检查整数及其两倍数是否存在
- LeetCode简单题之至少是其他数字两倍的最大数
- 2021年大数据Spark(十八):Spark Core的RDD Checkpoint