bash 配置文件
两类:
profile类:为交互式登录的shell进程提供配置
bashrc类:为非交互式登录的shell进程提供配置
登录类型:
交互式登录shell进程:
直接通过某终端输入账号和密码后登录打开的shell进程;
使用su命令:su - username, 或者 su -l username 执行的切换
非交互式登录shell进程:
su username 执行的用户登录切换;
图形 界面打开的终端;
profile类:
全局配置:对所有用户都生效;
/etc/profile
/etc/profile.d/*.sh
用户个人:仅对当前用户有效
~/.bash_profile
功用:
1. 用户定义环境变量;
2. 运行命令脚本;
bashrc类:
全局:
/etc/bashrc
用户个人:
~/.bashrc
功用:
1.定义本地变量;
2.定义命令别名;
notice:仅管理员可修改全局配置文件;
交互式登录shell进程:
/etc/profile --->> /etc/profile.d/* --->> ~/.bash_profile -->> ~/.bashrc -->> /etc/bashrc
非交互式登录shell进程:
~/.bashrc -->> /etc/bashrc -->> /etc/profile.d/*
命令行定义的特性,例如变量和别名作用域为当前shell进程的生命周期;
配置文件定义的特性,只对随后新启动的shell进程有效;
让通过配置文件定义的特性立即生效:
(1)通过命令行重复定义一次;
(2)让shell进程重读配置文件;
~] # source /PATH/FROM/CONF_FILE
~] # ./PATH/FROM/CONF_FILE
问题:
(1)怎么定义对所有用户生效的命令别名,例如 ‘lftps="lftp 192.168.157.157/pub"’
(2)让centos用户登录时,提供其已经登录,并显示当前系统时间?
最新文章
- PDMS模型导出RVM格式
- python与C++交互
- JAVA 8 默认方法-Default Methods
- 一款查看mysql QPS的脚本
- 添加删除程序无法安装IIS 提示没法加载模块
- 关于JS加载的问题
- JAVA的字节码技术
- Mysql中自增字段(AUTO_INCREMENT)的一些常识
- Codeforces 107B Basketball Team 简单概率
- Linux网络编程(六)
- springMvc项目的搭建,暂时没有整合持久层框架(java Config配置对比xml配置)
- ViewPager + TabLayout + Fragment + MediaPlayer的使用
- 使用LinkedList类生成一个集合对象,循环加入“小样1”,“小样2”,“小样3”,“小样4”,“小样5”……“小样100”。输出这个集合的大小。再使用循环删除这个集合中所有名字为偶数的对象,比如“小样6”,“小样100”,都是偶数名。最后:循环输出集合中所有的对象,看是否删除成功。
- Javascript高级编程学习笔记(28)—— BOM(2)window对象2
- 密码机制(PGP)
- 【漏洞复现】ES File Explorer Open Port Vulnerability - CVE-2019-6447
- 【scrapy】关于爬取的内容是Unicode编码
- MySQL数据导入到Mongo
- Vue+Flask看这篇就够了
- HIGH-SPEED PACKET PROCESSING USING RECONFIGURABLE COMPUTING