Linux 终端配置

一般Linux中的配置文件大多以点开头,而且多以rc结尾。比如vim的配置文件 .vimrc,bash shell的配置文件.bashrc,等等。
像这样的配置文件,如果用ls -l命令是列不出来的,需要用ls -a来列出。

rc”,它是“runcomm”的缩写――即“run command”(运行命令)的简写。 “rc” 是取自 “runcom”, 来自麻省理工学院在 1965 年发展的 CTSS系统。相关文献曾记载这一段话:”具有从档案中取出一系列命令来执行的功能;这称为 “run commands” 又称为 “runcom”,而这种档案又称为一个 runcom (a runcom)。

” rc”是很多脚本类文件的后缀,这些脚本通常在程序的启动阶段被调用,通常是Linux系统启动时。如/etc/rc(连接到/etc/rc.d/rc)是Linux启动的主脚本,而.bashrc是当Linux的bash shell启动后所运行的脚本。

Linux或Unix的许多程序在启动时,都需要“rc”后缀的初始文件或配置文件。


.bashrc配置终端


终端,有一个配置文件,叫做.bashrc,这是用户个人的终端配置文件。

打开家目录下的终端配置文件看看,只要输入以下命令:

nano ~/.bashrc

Shell是一个用户跟操作系统之间的一个命令解释器,也就是用户与Linux操作系统之间沟通的桥梁。
bash是最常用的一种shell程序,Ubuntu和大部分常见的Linux发行版默认的shell程序就是bash。
.bashrc就是bash这个shell程序的配置文件。


创建别名
别名的英语是alias。如果我们向下查找我们的.bashrc文件,会发现有alias开头的行

    当我们在终端输入比如ll(两个小写的L),其实就是等同于 ls -alF当我们在终端输入比如la,其实就是等同于 ls -A

所以说,别名设置得好,可以降低我们的工作量,因为输入ll总比输入ll -alF简单吧。

在.bashrc中创建别名的语法是这样的:

alias name='command'

name就是别名的名字,而command就是替换别名的实际的终端命令。


全局的bashrc

终端所有的bash有它的全局配置文件:/etc/bash.bashrc


对于每个用户来说,家目录下的.bashrc文件的优先级比系统的/etc/bash.bashrc文件高。
例如同样的配置选项,如果.bashrc和/etc/bash.bashrc不同,那么以.bashrc的为准。


profile配置文件


在我们的家目录下,其实还有一个.profile文件,而且它也有对应的全局profile文件,是 /etc/profile

profile在英语中是“外观,轮廓”的意思。那么这个profile文件和bashrc有什么区别呢?

简单来说是这样的:

 profile这个配置文件是用户登录的终端的配置文件,也就是我们以前学过的tty1~tty6这6个命令行终端(没有图形界面的,分别通过Ctrl+Alt+F1~F6进入)。profile是这些需要登录的,非图形界面的终端的配置文件。bashrc这个配置文件是不用用户登录的终端,也就是我们一直在使用的终端形式,图形化的终端的情况。这种终端是读取.bashrc为配置文件的。

有一点需要记住:profile文件会调用.bashrc,所以其实我们修改了.bashrc,也就是间接修改了profile文件。因为profile文件会用profile本身的配置再加上.bashrc的配置。

可以用下图帮助理解:

这里写图片描述


在我们修改了.bashrc和profile文件后,默认是在用户下次登录系统时才能生效。但是我们可以用source命令来使改动立即生效:

source .bashrc
source .profile

或者
重启或重新login也都会生效


通常情况下,全局配置优先级大于局部家配置的。


参考文献


Linux探索之旅 | 第二部分第六课:Nano文本编辑器和终端配置

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

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

相关文章

Caffe2 Compilation Error gflags.cc' is being linked both statically and dynamically into this execut

问题描述 python -c from caffe2.python import core 2>/dev/null && echo "Success" || echo "Failure" 出现这个问题 ERROR: something wrong with flag flagfile in file /home/bids/softwares/gflags-2.2.0/src/gflags.cc. One possibil…

值得关注的医疗 AI 公司(待续)

医疗成像 Clearview Diagnostics 是一家开发辅助医生诊断疾病的工具的 AI 软件公司。该公司最初的重点是乳腺癌。 Butterfly Network 是一家医疗成像技术公司,该公司创建了一个集成了深度学习技术的便携式医疗成像设备,帮助缺乏医疗机构或医生不够专业的…

caffe2 介绍

Caffe2的特性 Caffe2框架可以通过一台机器上的多个GPU或具有一个及多个GPU的多台机器来进行分布式训练。 也可以在iOS系统、Android系统和树莓派(Raspberry Pi)上训练和部署模型。只需要运行几行代码即可调用Caffe2中预先训练好的Model Zoo模型。Caffe2…

如何向IPython Notebook中导入.py文件

相关文章链接 如何向IPython Notebook中导入.py文件 如何将 ipynb 发布到 blog 中(html, markdown格式) Introducing IPython Notebook Beginner’s IPython Notebook Tutorial Example notebook showing how to do statistics in IPython Notebook next generation sli…

Python 中的numpy 库

待总结 用scikit-learn和pandas学习线性回归 用scikit-learn和pandas学习Ridge回归 待整理的 Numpy & Pandas numpy——主要对其 N 维数组对象有用 http://www.numpy.org/ Pandas数据转为 numpy数据 df_numpyMatrix df.as_matrix() df_numpyMatrixdf.values a([3.23…

Python 中的Pandas库

待总结 用scikit-learn和pandas学习线性回归 用scikit-learn和pandas学习Ridge回归 基于python的数据分析库Pandas pandas——Python 数据分析库,包括数据框架(dataframes)等结构 http://pandas.pydata.org/ 10 Minutes to Pandas&#…

weka和matlab完成完整分类实验

本文 本文简单介绍数据集介绍、weka的使用、weka与LIBSVM、matlab与LIBSVM以及分类的若干细节问题。 1. 数据集介绍 打开网址UCI数据集,如下图。 从右下角可以看到Iris这个数据集,这是使用最多的数据集,目前下载量超过了82万。 打开之后跳…

Python 中的绘图matplotlib mayavi库

python matplotlib 图像可视化 python-data-visualization-course Interactive Web Plotting for Python Interactive Web Plotting for Python-github 待整理的 Matplotlib Introduction to Matplotlib and basic line matplotlib——一个 2D 绘图库,可产生…

python -pass的用法

空语句 熟悉C/C的经常会这样写判断语句: if(ture)expression; else;//do nothing 那在Python里面怎么去表达空语句呢,这时候就用到了pass。 number input(请输入一个数) if number 5:print(your numbers is 5) else:pass 实际…

python -lambda表达式的用法

匿名函数 lambda的意义: 利用lambda我们可以速写函数,不用去定义函数就可以直接使用 y lambda x,z:59*x8*z print(y(2,4)) 从例子中可以看到,lambda的语法结构是: lambda input : output expression lambda的用法比较简单&…

ubuntu 16.04 配置Python2.7 和 Python3.5 同时调用OpenCV

安装OpenCV OpenCV 官网,下载见 SourceForge and GitHub。 若使用官网版本安装不成功,则可试试Github版本。 或者 git clone https://github.com/Itseez/opencv.git 安装依赖库 sudo apt-get -y install libopencv-dev sudo apt-get -y install bui…

生成特定分布随机数的方法:Python seed() 函数numpy scikit-learn随机数据生成

描述 seed() 方法改变随机数生成器的种子,可以在调用其他随机模块函数之前调用此函数。。 语法 以下是 seed() 方法的语法: import random random.seed ( [x] ) 注意:seed(()是不能直接访问的,需要导入 random 模块,然后通过 ra…

shutil.rmtree()

描述 shutil.rmtree() #递归地删除文件 如果存在以下树结构 - user- tester- noob- developer- guru 即 user 目录下存在多级子目录 如果要递归删除user\tester 目录的内容,可使用shutil.rmtree()函数 import shutil shutil.rmtree(ruser\tester) mkdir -p fo…

The ntpath module

ntpath module用法示例 import ntpath file "/my/little/pony"print "isabs", ">", ntpath.isabs(file) print "dirname", ">", ntpath.dirname(file) print "basename", ">", ntpath.basena…

python中的glob 模块学习文件路径查找

glob glob.glob(pathname), 返回所有匹配的文件路径列表。它只有一个参数pathname,定义了文件路径匹配规则,这里可以是绝对路径,也可以是相对路径。 import glob glob.glob(rc:/*.txt) 这里就是获得C盘下的所有txt文件glob.glob(…

python os模块 常用命令

os 模块用法示例 python编程时,经常和文件、目录打交道,这是就离不了os模块。os模块包含普遍的操作系统功能,与具体的平台无关。以下列举常用的命令 1. os.name()——判断现在正在实用的平台,Windows 返回 ‘nt; Linux 返回’pos…

pandas.DataFrame.iterrows

iterrows DataFrame.iterrows()[source] Iterate over DataFrame rows as (index, Series) pairs. 迭代(iterate)覆盖整个DataFrame的行中,返回(index, Series)对>>> df pd.DataFrame([[1, 1.5]], columns[int, float]) >>> row next(df.iterr…

scipy.ndimage.zoom上采样与下采样

插值 Bilinear interpolation would be order1, nearest is order0, and cubic is the default (order3). 举例说明 import numpy as np import scipy.ndimagex np.arange(64).reshape(8,8)print Original array: print xprint Resampled by a factor of 2 with nearest i…

Python 进度条 tqdm

用法 tqdm(读音:taqadum, تقدّم)在阿拉伯语中的意思是进展。tqdm可以在长循环中添加一个进度提示信息,用户只需要封装任意的迭代器 tqdm(iterator),是一个快速、扩展性强的进度条工具库。 from tqdm import tqdm…

sublime-text-3设置输入中文方法

以下方法在 ubutun16.04 中亲测可行,subl版本为 3126 。 一.下载源文件 源文件github链接地址为 https://github.com/jfcherng/my_scripts 或见CSDN下载。 二.安装fcitx输入法 打开终端,输入命令 sudo apt-get install -y fcitx fcitx-im 安装 fcitx…