Linux shell编程01--shell的启动

什么人需要学shell

程序员(初步系统管理能力/编写用户安装于配置脚本)

 

shell是什么

shell是个负责把用户语法的语言解释成系统与内核调用解释程序

 用户语法:采用最早的语言algol语言

          采用的c语言

1.      shell分成两大类:

       algol语言风格:sh , ksh, bash

       c语言风格:csh,tcsh

 

1.查看当前shell:

           使用echo $SHELL

2.      每个终端的shell与用户启动的shell

          echo $SHLVL 查看shell嵌套层次

2.1. 用户登录与shell的关系

a.       使用telnet连接到服务器

b.       服务器启动login

c.       用户输入账号与口令

d.       服务器打开/etc/passwd  /etc/shadow

             /etc/group 等文件

e.       校验用户信息,并且把打开的信息保存在内存中

      这些信息有公用名字:环境变量

      LOGNAME USER HOME SHELL  UID MALL

      查看环境变量:

              命令:echo ${LOGNAME}    echo${USER}

f.       切换到主目录${HOME}

g.       启动shell (login  shell/登录shell)

2.2. shell的启动方式

      登录方式启动

            登录时默认启动方式是登录shell

            用户也可以使用登录方式启动  bash –l  或 bash --login

      用户方式启动

           bash

     启动方式不同:

          Shell启动的时候还做了如下工作:

            加载如下几个脚本

             /etc/profile

             ~/.bashrc

             ~/.bash_profile或 ~/.bash_login或者~/.profile中的一个

            

            登录shell只加载/etc/profile与~/.bash_profile ~/.profile~/bash_login

            非登录shell只加载~/.bashrc

            注意:

                   ~/.bashrc的登录方式启动的时候是靠~/.bash_profile文件加载的

      作用:

           配置环境变量的时候应该知道怎么选择修改哪个文件

你可能感兴趣的:(shell,脚本,bash)