shell 操作环境
一.路径与命令查找顺序
命令的运行程序可以这样看:
1.以相对/绝对的路径执行命令,例“/bin/ls”或“ls”
2.由alias乍到该命令来执行
3.由bash内置的(builtin)命令来执行
4.通过$PATH这个变量的顺序找到的第一个命令来执行
例如,执行/bin/ls与ls这两个命令来查看,会发现ls由颜色,而/bin/ls没有颜色,因为/bin/ls会直接采用该命令来执行,而ls会因为alias别名而先使用,如果西那个要了解命令查找的顺序,其实通过type -a ls也可以查询
二.bash的登陆与欢迎信息:/etc/issue,/etc/motd
[root@server3 ~]# cat /etc/issue
\s
Kernel \r on an \m
issue内的各代码意义
\d 本地端时间的日期
\l 显示地几个终端机接口
\m 显示硬件的等级
\n 显示主机的网络名称
\o 显示 domain name
\r 显示操作系统的版本
\t 显示本地端时间的时间
\s 操作系统的名称
\v 操作系统的版本
如果希望用户在登陆时可以获取一些信息,可以将信息加入/etc/motd中
[root@server3 ~]# cat /etc/motd
welcome
[kiosk@foundation8 ~]$ ssh root@172.25.8.3
root@172.25.8.3's password:
Last login: Mon Jan 14 19:23:32 2019 from 172.25.8.250
welcome
[root@server3 ~]# cat /etc/issue
三.终端机的环境设置:stty,set
stty
格式: stty 【-a】
-a:将目前所有的stty参数列出来
root@server3 ~]# stty -a
speed 38400 baud; rows 15; columns 79; 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;
......
在上面列表中,需要注意的时特殊字体的几个,如果出现^表示【ctrl】的意思。几个重要的代表意义是:
eof:End of file的意思,代表结束输入
erase:向后删除字符
intr:送出一个interrupt(中断)的信号给目前正在运行的程序
kill:删除目前命令上的所有文字
quit:送出一个quit的信号给目前正在运行的程序
start:在某个程序停止后,重新启动它的输出
stop:停止目前屏幕的输出
susp:送出一个terminal stop的信号给正在运行的进程
例:
*设置用ctrl+h进行字符的删除
stty erase ^h
set
格式:set 【-uvCHhmBx】
-u:默认不启用,若启用后,当使用未设置变量时,会显示错误信息
-v:默认不启用,若启用后,在讯息被输出前,会显示信息的原是内容
-x:默认不启用,若启用后,在命令被执行前,会显示命令内容(前面由++号)
-h:默认启用,与历史命令有关
-H:默认启用,与历史命令有关
-m:默认启用,与工作管理有关
-B:默认启用,与括号【】的作用有关
-C:默认不启用,使用>等时,若文件存在时,该文件不会被覆盖
bash默认组合键介绍
组合按键 执行结果
Ctrl+C 终止目前的命令
Ctrl+D 输入结束(EOF),例如由检结束的时候
Ctrl+M 就是Enter
Ctrl+S 暂停屏幕的输出
Ctrl+Q 恢复屏幕的输出
Ctrl+U 在提示符下,将整行命令删除
Ctrl+Z 暂停目前的命令
四.通配符与特殊符号
常用通配符介绍
符号 意义
* 代表0到无穷多各任意字符
? 代表一定有一个任意字符
[] 同样代表一定有一个在中括号内的字符(非任意字符)。*1
[-] 若有减号在中括号内,代表在编码顺序内的所有字符*2
[^] 若中括号内的第一个字符为指数符号(*),那表示原向选择*3
*1:例如[abcd]代表一定有一个字符,可能是a,b,c,d这四个任何一个
*2:例如[0-9]代表0到9之间的所有数字,因为数字的语系编码是联系的
*3:例如[^abc]代表一定有一个字符,只要是非a,b,c的其他字符就接受的意思
特殊符号介绍
符号 内容
# 批注符号,这个最常被使用在script当中,视为说明,其后数 据均不执行
\ 转义符号,将“特殊字符或通配符”还原成一般字符
| 管道(pipe),分隔两个管道命令的界定
; 连续命令执行分隔符,连续性命令的界定
~ 用户的主文件夹
$ 使用变量前导符,即是变量之前需要加的变量替代值
& 作业控制,将命令变成背景下工作
! 逻辑运算意义上的“非”的意思
/ 目录符号,路径分隔的符号
>,>> 数据流重定向,输出导向,分别是“替换”与“追加”
<,<< 数据流重定向,输入导向,
'' 单引号,不具有变量置换的功能
"" 双引号,具有变量置换的功能
`` 两个“`”中间为可以先执行的命令,也可以使用$()
() 中间为子shell的开始与结束
{} 在中间为命令块的组合
shell 操作环境的更多相关文章
- shell 编程 && bash 简介(shell 变量、shell操作环境、数据流重导向、管线命令、shell script)
如何学习一门编程语言 数据类型 运算符 关键字 1 认识BASH 这个shell linux是操作系统核心,用户通过shell与核心进行沟通,达到我们想要的目的.硬件.核心.用户之间的关系: 原理:所 ...
- Linux设置文件与Shell操作环境
Shell设置文件读取流程 /etc/shells记录了Linux系统中支持的所有shell,默认使用bash.用户登入Linux系统时会获取到一个shell,具体获取到哪个shell与登录账号有关, ...
- 第十一章、认识与学习 BASH Bash Shell 的操作环境
bash中的变量动不动就说环境变量,真是奇怪,bash只是一个c语言编写的程序而已,跟环境变量有什么关系?如果知道dos的历史的话就知道有个时代是只有命令行界面而没有图形用户界面,这只小小的程序就包揽 ...
- 每篇半小时1天入门MongoDB——2.MongoDB环境变量配置和Shell操作
上一篇:每篇半小时1天入门MongoDB——1.MongoDB介绍和安装 配置环境变量 Win10系统为例 右键单击“此电脑”——属性——高级系统设置——高级——环境变量,添加C:\Program F ...
- Shell之操作环境
目录 Shell之操作环境 参考 命令运行顺序 欢迎信息 环境配置 Shell之操作环境
- 大数据:Hadoop(JDK安装、HDFS伪分布式环境搭建、HDFS 的shell操作)
所有的内容都来源与 Hadoop 官方文档 一.Hadoop 伪分布式安装步骤 1)JDK安装 解压:tar -zxvf jdk-7u79-linux-x64.tar.gz -C ~/app 添加到系 ...
- bash的操作环境[转]
Bash Shell 的操作环境: 是否记得我们登陆主机的时候,屏幕上头会有一些说明文字,告知我们的 Linux 版本啊什么的, 还有,登陆的时候我们还可以给予用户一些信息或者欢迎文字呢. ...
- 理解及操作环境变量(基于Mac操作)
通过本文,简单的了解下环境变量及其操作,与便于遇到相关问题时能够准确快捷的解决. 什么是环境变量 An environment variable is a dynamic-named value th ...
- linux下的shell操作mysql
(1)MySQL的启动 重启了一次服务器后,使用> mysql -u root -p登陆是出现下面的错误: ERROR 2002 (HY000): Can't connect to local ...
随机推荐
- LoadRunner使用问题
最近给客户做POC,为了测试大数据的框架的一个并发能力,使用loadrunner进行相关的测试,目前发现几个要注意的地方 1: loadrunner的Java脚本必须使用jdk1.6的32位版本 2: ...
- Python基础入门-集合
今天给大家分享的是python中集合(set)的概念,集合这个词其实和高中学的数学集合的概念很相近,或者作为初学者你就可以把它理解为数学当中的集合.在python中集合(set)是由一个个键组成的,但 ...
- C#序列化xml,开发常用
序列化操作对于开发人员来说最熟悉不过了. 序列化分为:序列化和反序列化. 序列化名词解释:序列化是将对象状态转换为可保持或传输的格式的过程. 与序列化相对的是反序列化,它将流转换为对象.这两个过程结合 ...
- 换零钞——第九届蓝桥杯C语言B组(国赛)第一题
原创 标题:换零钞 x星球的钞票的面额只有:100元,5元,2元,1元,共4种.小明去x星旅游,他手里只有2张100元的x星币,太不方便,恰好路过x星银行就去换零钱.小明有点强迫症,他坚持要求200元 ...
- hibernate的获取session的两方法比较,和通过id获取对象的比较,一级缓存二级缓存
opensession与currentsession的联系与区别 在同一个线程中opensession的session是不一样的,而currentsession获取的session是一样的,这就保证了 ...
- 在云主机后台进行python程序运行
nohup python main.py & nohup liunx自带的命令 注意:后面(&)!
- python的requests库怎么发送带cookies的请求
背景: 在用robot做接口自动化时,有一个查询接口需要用到登录后返回的token等信息作为cookies作为参数一起请求(token是在返回体中,并不在cookies中), 刚好create se ...
- mvc - codefirst 数据迁移
from :http://blog.csdn.net/xiaoyiyz/article/details/41485325
- Nginx开发HTTP模块入门
Nginx开发HTTP模块入门 我们以一个最简单的Hello World模块为例,学习Nginx的模块编写.假设我们的模块在nginx配置文件中的指令名称为hello_world,那我们就可以在ngi ...
- MySQL事务在MGR中的漫游记—路线图
欢迎访问网易云社区,了解更多网易技术产品运营经验. MGR即MySQL Group Replication,是MySQL官方推出的基于Paxos一致性协议的数据高可靠.服务高可用方案.MGR在20 ...