1、注销时生效的环境变量配置文件

在用户退出登录时,只会调用一个环境变量配置文件,就是~/.bash_logout文件。

这个文件默认没有写入任何内容,可是如果我们希望再退出登录时执行一些操作,比如清除历史命令,或者备份某些数据,就可以把命令写入这个文件。

2、其他配置文件

还有一些环节变量配置文件,最常见的就是~/.bash_history文件,也就是历史命令保存文件。

3、Shell登录信息相关文件

(1)/etc/issue文件说明

我们在登录tty1-tty6这六个本地终端时,会有几行的欢迎界面。

这些欢迎信息是保存在哪里的?可以修改吗?

当然可以修改,这些欢迎信息是保存在/etc/issue文件中,

该文件就是一个普通文件显示,配置的内容,重启生效。

我们查看下这个文件:

[root@localhost ~]# cat /etc/issue
# 当前CentOS系统的版本
CentOS release 6.8 (Final)
# 当前系统的主要相关信息
Kernel \r on an \m

可以支持的转义符我们可以通过man agetty命令查询,在表中我们列出常见的转义符作用:

转义符 作用
\d 显示当前系统日期。
\s 显示操作系统名称。
\l 显示登录的终端号,这个比较常用。
\m 显示硬件体系结构,如1386,1686等。
\n 显示主机名。
\o 显示域名。
\r 显示内核版本。
\t 显示当前系统时间。
\u 显示当前登录用户的序列号。

注意:该欢迎信息,值对本地的tty1-tty6终端生效,远程终端,如ssh登陆的终端是看不到上面信息的。

(2)/etc/issue.net文件说明

/etc/issue文件是在本地终端登录时显示欢迎信息的文件,如果是远程登录(如ssh远程登录,或telnet远程登录)需要显示欢迎信息,则需要配置/etc/issue.net文件。

使用这个文件时需要注意:

  • 首先,在/etc/issue文件中支持的转义符,在/etc/issue.net文件中是不能使用的。
  • 其次,ssh远程登录是否显示/etc/issue.net文件中的欢迎信息,是由ssh的配置文件决定的。
  • 如果我们需要ssh远程登录可以查看/etc/issue.net的欢迎信息,那么首先需要修改ssh的配置文件/etc/ssh/sshd_config,加入如下内容:
    [root@localhost ~]# cat /etc/ssh/sshd_config
    
    # …省略部分输出…
    
    # 把Banner none的注释打开
    # 然后添加/etc/issue.net文件在Banner后
    # 使issue.net文件生效 # no default banner path
    # Banner none
    Banner /etc/issue.net # …省略部分输出…

    这样在ssh远程登录时,也可以显示欢迎信息,只是不再可以识别\d\l等信息了。

  • 配置完成/etc/issue.net文件,重启远程终端即可。

(3)/etc/motd文件说明

/etc/motd文件中也是显示欢迎信息的,

这个文件和/etc/issue/etc/issue.net文件的区别是:

/etc/issue/etc/issue.net是在用户登录之前显示欢迎信息,

/etc/motd是在用户输入用户名和密码,正确登录之后显示欢迎信息。

/etc/motd文件中的欢迎信息,不论是本地登录,还是远程登录都可以显示。

提示:

更多的建议在/etc/motd文件中写一些警告信息,而不是欢迎信息。

/etc/motd文件是一个空文件,直接编辑你需要显示的内容即可。

配置完成/etc/motd文件,重启远程终端即可。

4、定义Bash快捷键

查询系统中所有生效的快捷键

[root@localhost ~]# stty -a

修改Bash快捷键:

# 格式
[root@localhost ~]# stty 关键字 快捷键 # 查看查询系统中所有生效的快捷键
[root@localhost ~]# stty -a
speed 38400 baud; rows 24; columns 87; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>; eol2 = <undef>;
swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; werase = ^W; lnext = ^V;
flush = ^O; min = 1; time = 0;
-parenb -parodd cs8 -hupcl -cstopb cread -clocal -crtscts -cdtrdsr
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff -iuclc
-ixany -imaxbel -iutf8
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt echoctl
echoke # 修改intr快捷键
# 定义ctrl+p快捷键为强制终止,^字符只要手工输入即可。
[root@localhost ~]# stty intr ^p # 查看查询系统中所有生效的快捷键
[root@localhost ~]# stty -a
speed 38400 baud; rows 24; columns 87; line = 0;
intr = ^P; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>; eol2 = <undef>;
swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; werase = ^W; lnext = ^V;
flush = ^O; min = 1; time = 0;
-parenb -parodd cs8 -hupcl -cstopb cread -clocal -crtscts -cdtrdsr
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff -iuclc
-ixany -imaxbel -iutf8
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt echoctl
echoke

提示:系统默认的快捷键,并不建议更改,这里只是告诉你可以修改。

『忘了再学』Shell基础 — 23、其他环境变量配置文件的更多相关文章

  1. 『忘了再学』Shell基础 — 13、环境变量(一)

    目录 1.用户自定义的环境变量 (1)环境变量设置 (2)查询自定义环境变量 (3)删除自定义环境变量 2.系统自带的环境变量--PATH环境变量 (1)PATH环境变量 (2)PATH环境变量的作用 ...

  2. 『忘了再学』Shell基础 — 14、环境变量(二)

    目录 1.PS1变量的作用 2.PS1变量的查看 2.PS1可以支持的选项 3.PS1环境变量的配置 4.总结 提示: 在Linux系统中,环境变量分为两种.一种是用户自定义的环境变量,另一种是系统自 ...

  3. 『忘了再学』Shell基础 — 15、环境变量(三)

    目录 1.LANG语系变量介绍 2.如何查看Linux中支持的语系 3.查看当前系统的语系 4.总结 提示: 在Linux系统中,环境变量分为两种.一种是用户自定义的环境变量,另一种是系统自带的环境变 ...

  4. 『忘了再学』Shell基础 — 12、用户自定义变量

    目录 1.变量定义 2.变量调用 3.变量的修改 4.查看变量 (1)-u选项说明: (2)-x选项说明: (3)set命令说明: 5.变量删除 1.变量定义 变量正确定义. 格式:变量名=" ...

  5. 『忘了再学』Shell基础 — 16、位置参数变量

    目录 1.位置参数变量$n 2.位置参数变量$*和$@ 3.位置参数变量$# 位置參数变量的作用主要用于脚本的传参. 位置參数变量的名称和作用都是确定不能改变的,但是该变量的内容是可以更改的,也就是变 ...

  6. 『忘了再学』Shell基础 — 11、变量定义的规则和分类

    目录 1.定义变量的规则 2.变量的分类 1.定义变量的规则 在定义变量时,有一些规则需要遵守 变量名称可以由字母.数字和下划线组成,但是不能以数字开头.如果变量名是2name则是错误的. 在Bash ...

  7. 『忘了再学』Shell基础 — 5、Bash基本功能(命令的别名和常用快捷键)

    目录 1.给命令设置别名 (1)设置别名的命令格式 (2)命令别名永久生效 (3)别名的优先级 2.Bash常用快捷键 1.给命令设置别名 Linux系统的命令别名我们之前已经说过了,这里再过一边. ...

  8. 『忘了再学』Shell基础 — 22、主要的环境变量配置文件说明

    目录 1.source命令 2.Linux系统中环境变量配置文件 (1)登录时生效的环境变量配置文件 (2)/etc/profile环境变量配置文件 (3)/etc/profile.d/*.sh环境变 ...

  9. 『忘了再学』Shell基础 — 4、Bash基本功能(history命令)

    目录 1.history历史命令 2.设置命令历史记录的条数 3.清空历史命令 4.历史命令的调用 5.命令与文件的补全 在Linux系统中默认的Shell就是Bourne-AgainShell(简称 ...

随机推荐

  1. 安装PLSQLDeveloper

    1.点击.exe开始安装 2.选择安装路径点击下一步 3.点击finish 4.注册  ,打开新安装的plsql 如下: 点击关闭(现在是登录不上的) 点击help->Register 如下: ...

  2. 利用es6解构赋值快速提取JSON数据;

    直接上代码 { let JSONData = { title:'abc', test:[ { nums:5, name:'jobs' }, { nums:11, name:'bill' } ] } l ...

  3. 基于nodejs中实现跨域的方法

    一般情况下跨域是通过ajax的方式请求数据,通过js在不同的域之间进行数据传输或者通信: 只有通过ajax方式获取请求的时候才会有跨域问题需要解决: 例如在本地模拟两个服务端. 一个服务端去通过aja ...

  4. Blazor组件自做三 : 使用JS隔离封装ZXing扫码

    Blazor组件自做三 : 使用JS隔离封装ZXing扫码 本文基础步骤参考前两篇文章 Blazor组件自做一 : 使用JS隔离封装viewerjs库 Blazor组件自做二 : 使用JS隔离制作手写 ...

  5. Spring-JdbcTemplate基本使用

    概述:它是spring提供的一个对象,是对原始繁琐的Jdbc API对象的简单封装,spring框架为我们提供了很多的操作模板类.例如操作关系型数据库JdbcTemplate和HibernateTem ...

  6. Python Django项目日志查询系统

    该项目适合中小型公司日志查询工作.大型公司可以使用elk等.该系统其实就是调用了absible命令去查日志,然后把输出的信息输到页面查看. 日志查询系统 维护手册 作者:陈土锋 日期:2020年6月1 ...

  7. k8s pod 在迁移zookeeper时出现的问题

    一次迁移中出现的问题,因为要搬迁机房,集群中的节点服务器分布在两个机房,通过专线打通了,现在需要整体都迁移到其中一个机房,所以pod要进行迁移,机器资源也比较紧张,在迁移中zookeeper迁移出现问 ...

  8. 32位x86处理器架构

    我们看看32 位 x86 处理器的基本架构特点.这些处理器包括了 Intel IA-32 系列中的成员和所有 32 位 AMD 处理器. 操作模式 x86 处理器有三个主要的操作模式:保护模式.实地址 ...

  9. String_StringBuilder_StringBuffer 区别

    1.String: String类是final修饰的,属于不可变(immutable)类,每次对原对象操作都会产生新的String对象. 源码中String类的定义:private final cha ...

  10. 使用 HTML5 input 类型提升移动端输入体验(转翻译)

    在过去的几年里,在移动设备上浏览网页已变得难以置信的受欢迎. 但是这些设备上的浏览体验,有时遗留很多的有待改进.当涉及到填写表单时,这一点尤为明显.幸运的是,HTML5规范引入了许多新input类型, ...