.bash_profile and .bashrc

2024-02-22 15:18
文章标签 bash profile bashrc

本文主要是介绍.bash_profile and .bashrc,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

/etc/profile

为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行,并从/etc/profile.d目录的配置文件中搜集shell的设置,etc/profile中设定的变量的可以作用于任何用户,而~/.bashrc等中设定的变量只能继承/etc/profile中的变量。

/etc/bashrc

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

~/.bash_profile

用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件被执行一次。它设置一些环境变量,执行用户的.bashrc文件。

~/.bashrc

该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该文件被读取。

~/.bash_logout

当每次退出bash shell时,执行该文件。

~/.bash_history

记录历史输入命令

我的系统中的相关文件如下所示,调用关系也很清楚。

# /etc/profile
# System wide environment and startup programs, for login setup
# Functions and aliases go in /etc/bashrc
pathmunge () {
if ! echo $PATH | /bin/egrep -q "(^|:)$1($|:)" ; then
if [ "$2" = "after" ] ; then
              PATH=$PATH:$1
else
              PATH=$1:$PATH
           fi
        fi
}
# ksh workaround
if [ -z "$EUID" -a -x /usr/bin/id ]; then
        EUID=`id -u`
        UID=`id -ru`
fi
# Path manipulation
if [ "$EUID" = "0" ]; then
        pathmunge /sbin
        pathmunge /usr/sbin
        pathmunge /usr/local/sbin
fi
# No core files by default
ulimit -S -c 0 > /dev/null 2>&1
if [ -x /usr/bin/id ]; then
        USER="`id -un`"
        LOGNAME=$USER
        MAIL="/var/spool/mail/$USER"
fi
JAVA_HOME=`/usr/java/jdk1.6.0_14`
HOSTNAME=`/bin/hostname`
HISTSIZE=1000
if [ -z "$INPUTRC" -a ! -f "$HOME/.inputrc" ]; then
    INPUTRC=/etc/inputrc
fi
export PATH USER JAVA_HOME LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC
for i in /etc/profile.d/*.sh ; do
if [ -r "$i" ]; then
. $i
    fi
done
unset i
unset pathmunge

# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
JAVA_HOME=/usr/java/jdk1.6.0_14
export JAVA_HOME
PATH=$PATH:$HOME/bin
BASH_ENV=$HOME/.bashrc
USERNAME="root"
export USERNAME BASH_ENV PATH
export LC_ALL=zh_CN.gb2312
export LANG=zh_CN.gb2312
export LANGUAGE=zh_CN.2312
unset USERNAME

vi .bashrc
# .bashrc
# User specific aliases and functions
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
Fi

# ~/.bash_logout
clear

这篇关于.bash_profile and .bashrc的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/735666

相关文章

如何使用 Bash 脚本中的time命令来统计命令执行时间(中英双语)

《如何使用Bash脚本中的time命令来统计命令执行时间(中英双语)》本文介绍了如何在Bash脚本中使用`time`命令来测量命令执行时间,包括`real`、`user`和`sys`三个时间指标,... 使用 Bash 脚本中的 time 命令来统计命令执行时间在日常的开发和运维过程中,性能监控和优化是不

bat脚本启动git bash窗口,并执行命令方式

《bat脚本启动gitbash窗口,并执行命令方式》本文介绍了如何在Windows服务器上使用cmd启动jar包时出现乱码的问题,并提供了解决方法——使用GitBash窗口启动并设置编码,通过编写s... 目录一、简介二、使用说明2.1 start.BAT脚本2.2 参数说明2.3 效果总结一、简介某些情

bash: arm-linux-gcc: No such file or directory

ubuntu出故障重装了系统,一直用着的gcc使用不了,提示bash: arm-linux-gcc: No such file or directorywhich找到的命令所在的目录 在google上翻了一阵发现此类问题的帖子不多,后来在Freescale的的LTIB环境配置文档中发现有这么一段:     # Packages required for 64-bit Ubuntu

bash脚本2_对比多个不同版本同名文件的异同

bash脚本2_对比多个不同版本同名文件的异同 #!/bin/bashFOLDER_A="$1"FOLDER_B="$2"IGNORE_STRING="loc_timestamp"subfolders=$(ls -d "$FOLDER_A"/*/)for subfolderA in $subfolders; dosubfolder_name=$(basename "$subfol

软件测试学习笔记丨Linux-Bash编程语法

本文转自测试人社区,原文链接:https://ceshiren.com/t/topic/32091 一、Bash编程基础 1.1 变量 1.1.1 语法 Variable_name=value 1.1.2 变量定义的规则 变量名区分大小写,a和A为两个不同的变量;变量名可以使用大小写字母混编的形式进行编写;变量名与值之间的=两侧都不能有空格;在读取或打印变量时,需使用$+变量名;

bash脚本1_完成文件夹的更新

bash脚本1_完成文件夹的更新 功能: 文件夹A,文件夹B 文件夹A是文件夹B的子集。 两者的层级一致,内部都包含多个子文件夹 写一个bash脚本将文件夹B中出现在文件A中的子文件夹替换为文件夹A的子文件夹 #!/bin/bash# 确保脚本以两个参数运行if [ "$#" -ne 2 ]; thenecho "Usage: $0 folderA folderB"exit 1

BLE Profile(GATT与GAP)

一. 引言 现在低功耗蓝牙(BLE)连接都是建立在 GATT (Generic Attribute Profile) 协议之上,GATT 是一个在蓝牙连接之上的发送和接收很短的数据段的通用规范,这些很短的数据段被称为属性(Attribute)。 二. GAP 详细介绍GATT之前,需要了解GAP(Generic Access Profile),它在用来控制设备连接和广播。GAP使你的设备被其

~/.bashrc 配置

grep 有颜色alias grep='grep --color'以下为个人配置 做个bakexport PATH="$PATH:/home/map/bin" 修改之后环境变量立即生效source ~/.bashrc

TensorFlow程序分析(profile)实战

导入必要的包 import osimport tempfileimport tensorflow as tffrom tensorflow.examples.tutorials.mnist import input_data 建立模型 batch_size = 100# placeholderinputs = tf.placeholder(tf.float32, [batch_size

Shell教程_在Bash_Shell中使用for循环详解

Shell教程_在Bash_Shell中使用for循环详解 在编程语言中, 循环是必不可少的组件, 当您想要一遍又一遍地重复代码直到满足指定条件时使用。 在 Bash 脚本中, 循环扮演着几乎相同的角色, 并用于自动执行重复性任务, 就像在编程语言中一样。 在 Bash 脚本中, 有 3 种类型的循环: for 循环、while 循环和 until 循环。这三个用于迭代值列表并执行一组给定的