【Linux】什么是.bashrc,以及其使用方法

经常在配置linux各种环境的时候,遇到对bashrc的配置。当时也只是机械地跟着教程,一步步输入指令;遇到的次数多了,想知道.bashrc究竟是何方神圣。于是整理了下其主要功能以及使用方法。

一、什么是.bashrc

.bashrc,属于一种系统隐藏文件,常常可见于 macOS 或者主流的 Linux 发行版。如果你运行一个基于 Unix 或者类 Unix 的操作系统,bash 很有可能是其默认终端,那么.bashrc就是这个终端里面指令运行的配置脚本

二、编辑.bashrc

配置内容中,最常见的就是配置别名、配置环境变量(包括系统变量和用户变量)、配置路径等等。当我们要配置.bashrc时,可以通过 nano 或者 vi / vim指令对.bashrc进行编辑,如下:

nano ~/.bashrc
vim ~/.bashrc
vi ~/.bashrc

注意编辑bashrc要遵守bash脚本的编辑格式,可以参考下面的编辑指南

An Introduction to Useful Bash Aliases and Functions | DigitalOcean

对bashrc做出任何的修改,都将会在下一次启动终端时候生效。如果希望立即生效,可以执行source指令:

source ~/.bashrc

三、.bashrc常用配置内容

经常我们用 # 注释文本,来做出配置内容的分隔

1、配置别名,定制指令

当我们想把一些常用的指令以及相关指令参数,定制为更加精简的指令,就可以用 alias作为别名设置。例如:

左边输入你想设置的别名,右边引号里是要执行的命令。

2、配置函数,定制指令过程

除了缩短命令名,你也可以用 bash 函数组合多个命令到一个操作。这些命令可以很复杂,但是它们大多遵循这种语法:

function_name () {command_1command_2
}

虽然是函数的定义方法,但是还是遵守bash命令的调用形式,无需带括号

下面的命令组合了 mkdir 和 cd 命令。输入 md folder_name 可以在你的工作目录创建一个名为“folder_name”的目录并立刻导航进入。函数中的 $1 代表第一个参数,就是你在函数名后紧跟着输入的文本

md () {mkdir -p $1cd $1 
}

3、环境变量的设置

Linux中主要可以通过两个方式读取PATH环境变量:

  • echo $PATH
  • $PATH直接调取当前PATH的值

在bashrc中,我们用export导出环境变量的配置,例如:

export DEMOPATH="/xxx/xxx/xx1x/"

如果为同一个变量配置多个路径,可以通过冒号分割:

export DEMOPATH="/xxx/xxx/xx1x/":"/xxx/xxx/xx2x/"

但是太多冒号很麻烦,可以直接调用$PATH来实现增量式的添加,例如:

【在后添加新的路径】

export DEMOPATH="/xxx/xxx/xx1x/"
export DEMOPATH="$DEMOPATH:/xxx/xxx/xx2x/"

【在前添加新的路径】

export DEMOPATH="/xxx/xxx/xx1x/"
export DEMOPATH="/xxx/xxx/xx2x/:$DEMOPATH"

*双引号在此可加可不加,相当于配变量,没啥区别,但是不要用单引号,会报错!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/434092.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Go 知识for-range

Go 知识for-range 1. for-range 的用法1.1 数组1.2 切片1.3 字符串1.4 map1.5 chan 2. 原理2.1 数组2.2 切片2.3 字符串2.4 map2.5 chan 3. 总结 https://a18792721831.github.io/ 1. for-range 的用法 for-range 表达式用于遍历集合元素,比传统的for更加简单直观…

03-Redis缓存高可用集群

文章目录 1、Redis集群方案比较2、Redis高可用集群搭建redis集群搭建Java操作redis集群 4、Redis集群原理分析槽位定位算法跳转重定位Redis集群节点间的通信机制gossip通信的10000端口网络抖动 Redis集群选举原理分析集群脑裂数据丢失问题集群是否完整才能对外提供服务Redis集群…

【LeetCode每日一题】2865. 美丽塔 I

2024-1-24 文章目录 [2865. 美丽塔 I](https://leetcode.cn/problems/beautiful-towers-i/) 2865. 美丽塔 I 初始化变量 ans 为0,用于记录最大的和值。获取整数列表的长度,保存到变量 n 中。使用一个循环遍历列表中的每个位置,从0到n-1。在循…

【JavaEE】网络原理: 网络编程套接字(概念)

目录 1.什么是网络编程 2.网络编程中的基本概念 2.1发送端和接收端 2.2请求和响应 2.3客户端和服务端 3.Socket套接字 4.Socket编程注意事项 1.什么是网络编程 网络编程,指网络上的主机,通过不同的进程,以编程的方式实现网络通信 (…

【C++】类和对象(中篇)(全网最细!!!)

文章目录 🍔一、类的六个默认成员函数🍔二、构造函数🍟1、概念🍟2、特性🍩默认构造函数 🍔三、析构函数🍟1、概念🍟2、特性🍩默认析构函数 🍔四、拷贝构造函数…

STL之queue 【队列】

STL之queue 【队列】 一.基本用法1.头文件2.创建queue3.插入元素:4.删除元素(弹出元素):5.访问队列的前端元素6.访问队列的后端元素7.检查队列是否为空8.获取队列的大小 二.综合示例:用C语言实现队列queue常见的应用场景包括: que…

Redis2-事务 连接Java 整合springboot 注解缓存

一、订阅和发布 Redis 发布订阅 (pub/sub) 是一种消息通信模式:发送者 (pub) 发送消息,订阅者 (sub) 接收消息。 Redis 客户端可以订阅任意数量的频道。 Redis的发布和订阅 客户端订阅频道发布的消息 频道发布消息 订阅者就可以收到消息 发布订阅的代…

图像噪声、去噪基本方法合集(Python实现)

文章目录 前言 本文主要参考冈萨雷斯的数字图像处理 (第4版),介绍图片中一些常见的噪声形式和常用的去噪方法,并且给出相应滤波方法的实现代码。 一、噪声分类 1、高斯噪声2、泊松噪声3、椒盐噪声4、瑞利噪声5、爱尔兰&#xff0…

基于 java+springboot+mybatis电影售票网站管理系统前台+后台设计和实现

基于 javaspringbootmybatis电影售票网站管理系统前台后台设计和实现 🍅 作者主页 央顺技术团队 🍅 欢迎点赞 👍 收藏 ⭐留言 📝 🍅 文末获取源码联系方式 📝 🍅 查看下方微信号获取联系方式 承…

node12集成form-create遇到的问题

其他版本需要根据node版本以及npm调整 无法安装 taobao镜像出现问题 跟换为最新版本的 // 1. 清空缓存 npm cache clean --force // 2. 关闭SSL验证 npm config set strict-ssl false // 3. 切换新源 npm config set registry https://registry.npmmirror.com // 4. 查看源是…

5 步轻松上手,教你从 0 到 1 落地 Jmeter 接口自动化脚本!

Jmeter是进行接口测试的一款非常主流的工具,但绝大部分测试工程师,对于Jmeter接口测试脚本整理都是一知半解的。今天这篇文章,就以一个金融项目中接口为例,通过简单5步,教大家如何0代码编写Jmeter接口自动化脚本&#…

特征点匹配 harris

算法的核心是利用局部窗口在图像上进行移动,判断灰度是否发生较大的变化。如果窗口内的灰度值(在梯度图上)都有较大的变化,那么这个窗口所在区域就存在角点。 这样就可以将 Harris 角点检测算法分为以下三步: 当窗口…