Shell

本文介绍了Linux下的Shell概念及其配置文件的区别。重点讲述了不同Shell配置文件的作用及如何在这些文件中设置环境变量。此外还提供了查看和设置环境变量的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Shell介绍

  • Shell:命令解释器,是用户和系统沟通的媒介,用户通过Shell输入命令,得到返回结果

  • Linux包含各种Shell,默认采用的是Bash

  • 系统可用的Shell记录在/etc/shells中


一个简单的shell脚本: 输出hellworld和当前时间

这里写图片描述


Bash shell的配置文件

  • 系统设定值

    • /etc/profile : 这个文件设定了几个重要的变量,如 PATH,USER,MAIL,HOSTNAME,HISTSIZE等。
    • /etc/bashrc: 这个文件用于规划umask。
    • etc/man.config:规划了man page的路径
  • 个人设定值

    • ~/.bash_profile:定义了个人路径与环境变量的文件名称
    • ~/.bashrc:设定个人变量
    • ~/.bash_history:记录历史命令
    • ~/.bash_logout:注销shell的时候BASH为你所做的事情,通常只有清屏
  • source 重新读入变量配置文件

    • 用法:
// source 变量配置文件
例:source .bashrc
// env 查看当前用户的所有环境变量
   env

环境变量配置文件区别:

  1. /etc/profile: 此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.并从/etc/profile.d目录的配置文件中搜集shell的。

  2. /etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取。

  3. ~/.bash_profile: 每个用户都可以使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件积极执行一次!默认情况下,它设置一些环境变量,执行用户.bashrc文件。

  4. ~/.bashrc: 该文件包含专用于你的bash shell的bash信息,当登陆时以及每次打开新的shell时,该文件被读取。

  5. ~/.bash_logout: 当每次推出系统(退出bash shell)时,执行该文件.另外,/etc/profile中设定的变量(全局)可以作用于任何用户,而 ./bashrc等中设定的变量(局部)只能继承 /etc/profile 中的变量,他们是 “父子” 关系。

  6. ~/.bash_profile: 是交互式, login 方式进入bash运行的; /.bashrc 是交互式, no-login 方式进入 bash 运行的通常二者设置大致相同,所以通常前者会调用后者。


环境变量查看与设置命令:

  • 显示环境变量HOME
$echo $HOME
/home/redbookd
  • 设置一个新的环境变量hello
$export HELLO="Hello!"
$echo $HELLO
Hello
  • 使用env命令显示所有的环境变量
$env
  • 使用set命令显示所有本地定义的Shell变量

  • 使用unset命令来清除环境变量

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值