Linux终端以及bash
目
录
Linux系统终端概述
图形化
服务器不需要图形化界面
个人电脑用图形化一般都会选择windows或者Mac
字符终端
服务器终端切换:Ctrl+Alt+F1...6
虚拟机终端切换:Ctrl+Alt+Shift+1...6
who和w
who
查看当前服务器用户登录信息
如果用户是远程登录,who可以看到用户登陆的ip地址
[root@oldboy tmp]# who
root pts/0 2018-08-08 14:43 (10.0.0.1)
root tty3 2018-08-08 18:23
w
- w命令可以看到服务器开机时长,1天43分;
- 可以查看当前服务器登录用户的数量,2人
3、可以查看服务器负载0.00,0.01,0.05分别代表15分钟,10分钟,5分钟的负载情况
[root@oldboy tmp]# w
18:25:23 up 1 day, 43 min, 2 users, load average: 0.00, 0.01, 0.05
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 10.0.0.1 14:43 3.00s 0.76s 0.01s w
root tty3 18:23 2:03 0.02s 0.02s -bash
pkill
pkill:强制让用户下线(管理员权限)
-t:指定开启进程的终端,踢用户
-9:表示强制杀死
Linux系统Bash管理
Linux提供的用户界面
- 字符界面
shell
bash(默认)
- 图像化界面
gnome
kde
Bash特性:命令快捷键
终端快捷键的使用可以帮助我们大大提升效率
Ctrl + A //光标跳转至正在输入的命令行的首部 home
Ctrl + E //光标跳转至正在输入的命令行的尾部 end
Ctrl + C //终止前台运行的程序
Ctrl + D //在shell中,ctrl-d表示推出当前shell。
Ctrl + Z //将任务暂停,挂至后台
Ctrl + L //清屏,和clear命令等效。
Ctrl + K //删除从光标到行末的所有字符
Ctrl + U //删除从光标到行首的所有字符
Ctrl + R //搜索历史命令, 利用关键字
//在命令行前加面加 "#" 则该命令不会被执行
shell的种类
shell的种类
cat /etc/shells查看当前系统支持的shell
[root@oldboy tmp]# cat /etc/shells
/bin/sh
/bin/bash
/sbin/nologin
/usr/bin/sh
/usr/bin/bash
/usr/sbin/nologin
date
1、显示日期和时间
+%R:时间(不显示秒)
+%H:小时
+%F:显示日期
例如:
[root@oldboy tmp]# date +%F_%R
2018-08-08_20:20
查看帮助:data –help
注意:两个参数后面不能是空格 例如:date +%F +%R中间有空格会报错
[root@oldboy tmp]# date +%F +%R
date: 额外的操作数 "+%R"
Try 'date --help' for more information.
2、创建文件时在文件名中加入时间戳
例如:``符号可以用$()代替
当时用嵌套时,要使用$(),所以推荐使用$()
touch log_`date +%F-%R`.bak
[root@oldboy tmp]# touch log2_$(date +%F-%R).bak
whoami
我是谁:显示当前登陆的用户名称,确认登录用户
[root@oldboy tmp]# whoami
root
bash的功能
1、命令行编辑快捷键
2、内部命令与外部命令
3、命令补全与路径补全
3、命令别名与命令历史
4、转义字符与路径展开
5、通配符与特殊字符
6、重定向与管道技术
查看后台任务jobs
1、查看后台程序
root@oldboy tmp]# jobs
[1]+ 已停止 vi
2、fg调出后台运行相应的程序
[root@oldboy tmp]# jobs
[1]- 已停止 vi
[2]+ 已停止 vi
[root@oldboy tmp]# jobs
[1]- 已停止 vi
[2]+ 已停止 vi
[root@oldboy tmp]# fg 1
命令别名alias
别名设置
[root@oldboy tmp]# alias IP='ifconfig'
[root@oldboy tmp]# IP
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 10.0.0.100 netmask 255.255.255.0 broadcast 10.0.0.255
inet6 fe80::8fad:bf45:71aa:396c prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:30:0c:34 txqueuelen 1000 (Ethernet)
RX packets 55198 bytes 24521783 (23.3 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 34705 bytes 18135355 (17.2 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
unalias 后接要取消的别名名称:如unalias IP
[root@oldboy tmp]# unalias IP
[root@oldboy tmp]# IP
-bash: IP: 未找到命令
注意:
1.使用alias命令就可以查看当前生效的别名有哪些
2.使用unalias 接别名名称
3.alias只对当前环境临时生效
4.如需永久生效,要将定义别名的命令写入登录配置文件
~/.bash_profile 只对当前用户生效,局部配置文件
~/.bashrc 只对当前用户生效,局部配置文件
/etc/profile 对所有用户生效,全局配置文件
/etc/bashrc 对所有用户生效,全局配置文件
5.使用 \ 符号临时不生效
查看历史命令history
查看历史使用过的命令
-c:清空历史记录,不清空文件(.bash_history:用户家目录下的隐藏文件)
-w:保存命令到历史记录
-d:删除命令历史的第n行
!:可以调用之前的命令
! number:调用第number行的命令
! cmd :调用离当前用户最近的cmd开头的命令
!$:调用上次命令使用的参数,或者按一下ESC键,再按.号
bash特性:命令流程
当我们执行一个命令, 整个命令执行流程如下:
1、判断命令是否通过绝对路径执行
2、判断命令是否存在别名
3、判断用户输入的是内部命令还是外部命令
内部命令: shell程序自带的命令。
外部命令: 在系统PATH变量的某个路径下的可执行程序。
使用type命令检测用户输入的命令属于内部命令还是外部命令。
4、内部命令直接执行, 外部命令检测是否存在缓存
5、检测PATH路径, 有执行, 无报错
特殊符号
``:反单引号:命令写在里面,会执行;
'':单引号:所见即所得;
"":双引号:里面使用变量,变量属性不会变;
事实上执行过的外部命令都会保存在内存缓存中, 当再次执行相同的命令, 会通过缓存调取执行, 也就意味着不会搜索PATH路径。
部署企业架构流程
部署企业架构流程
- 能部署固定的环境
- 能自动化运维(综合实验架构:LNMP、rsync、NFS、anbbix、ansible、comcat)
- Mysql、Redis、mha、shell脚本
- Python
Linux终端以及bash的更多相关文章
- PS1应用之——修改linux终端命令行各字体颜色
最近在学习linux操作系统(CentOS 6 & CentOS 7).觉得linux终端命令行全部为白色,会经常导致命令与输出内容难以分辨.于是上网找到修改linux终端命令行颜色的方法,发 ...
- linux终端terminal个性化配置(转)
http://blog.csdn.net/pipisorry/article/details/39584489 {本文介绍Linux终端字体颜色设置.终端提示符显示内容设置.自定义alias命令} l ...
- 如何在 Linux 终端中知道你的公有 IP
导读 在本文中我将会介绍在几种在 Linux 终端中查看你的公有 IP 地址的方法.这对普通用户来说并无意义,但 Linux 服务器(无GUI或者作为只能使用基本工具的用户登录时)会很有用.无论如何, ...
- 常用的Linux终端
常用的Linux终端 gnome-terminal (Gnome标配) xfce4-terminal (XFCE4标配) lxterminal (LXDE标配) konsole (KDE标配) 前面3 ...
- 修改linux终端命令行颜色
进入修改:vim /root/.bashrc 1.PS1 要修改linux终端命令行颜色,我们需要用到PS1,PS1是Linux终端用户的一个环境变量,用来说明命令行提示符的设置.在终端输入命令:#s ...
- 20个Linux命令及Linux终端的趣事
20个Linux命令及Linux终端的趣事 . 命令:sl (蒸汽机车) 你可能了解 ‘ls’ 命令,并经常使用它来查看文件夹的内容.但是,有些时候你可能会拼写成 ‘sl’ ,这时我们应该如何获得一些 ...
- Linux 终端颜色高亮
昨天在改一些东西时,不小心将root下的一些配置文件删掉了.导致启动终端后,字完全一个颜色,没有区分.在网上找到的都是 改整体颜色的.但实际上这时应该搜Linux终端高亮才能找到解决办法.在这里再列出 ...
- linux 终端控制-- 多彩输出 格式排版
linux 终端控制-- 多彩输出 格式排版 在unix/linux的终端下,怎么控制终端输出的颜色和格式呢,当然了有专门的工具,tput,但是能被terminal直接读懂的格式化字符串更通用. 先来 ...
- 修改linux终端命令行各字体颜色
这里我用的是 CentOS 7.5,觉得linux终端命令行全部为白色,会经常导致命令与输出内容难以分辨.于是上网找到修改linux终端命令行颜色的方法,发现通过定义PS1环境变量即可实现,下面我以r ...
随机推荐
- Swift4 基本数据类型(范围型, Stride型, 数组, 字符串, 哈希表)
创建: 2018/02/28 完成: 2018/03/04 更新: 2018/05/03 给主要标题加上英语, 方便页内搜索 [任务表]TODO 范围型(Range)与Stride型 与范围运算符相 ...
- springboot(四)拦截器和全局异常捕捉
github代码:https://github.com/showkawa/springBoot_2017/tree/master/spb-demo/spb-brian-query-service 全部 ...
- mysql 状态查询
select COUNT(case when info.State = '0' then State end ) as daichuliCount, COUNT(case when info.St ...
- 结对测试vs随机测试
在接口测试过程中,最关键的是对参数的各种情况进行测试. 随机测试是指随机选择一些参数值来测. 结对测试是指parewise算法生成较高"性价比"的组合情况来测. 随机测试存在的问题 ...
- Bryce1010的linux课程设计
1.设计目的 2.软件环境 3.要求 4.需求分析 5.总体设计 6.详细设计 7.调试与测试 8.总结 思路整理: 1.如果要开始编译着手的准备 SQLite数据库的安装 gtk+的安装 (.... ...
- 51nod 1134最长递增子序列
1134 最长递增子序列 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注 给出长度为N的数组,找出这个数组的最长递增子序列.(递增子序列是指,子序列的元素 ...
- 排序sort与qsort
首先看sort函数见下表: 函数名 功能描述 sort 对给定区间所有元素进行排序 stable_sort 对给定区间所有元素进行稳定排序 partial_sort 对给定区间所有元素部分排序 par ...
- 419 Battleships in a Board 甲板上的战舰
给定一个二维的甲板, 请计算其中有多少艘战舰. 战舰用 'X'表示,空位用 '.'表示. 你需要遵守以下规则: 给你一个有效的甲板,仅由战舰或者空位组成. 战舰只能水平或者垂直放置.换句话 ...
- Caused by: javax.el.PropertyNotFoundException: Property 'product' not found on type java.lang.String
今天在JSP利用EL表达式取值报了 "javax.el.PropertyNotFoundException”,经过debug和打印将问题定位到这段代码: HTML应该是没啥问题,看提示在ja ...
- Angular jsonp 同源策略的问题
引用:http://www.cnblogs.com/dengzy/p/5388357.html 说到AJAX就会不可避免的面临两个问题,第一个是AJAX以何种格式来交换数据?第二个是跨域的需求如何解决 ...