Linux中的几个命令
来源:互联网 发布:sony摄像机数据恢复 编辑:程序博客网 时间:2024/06/06 03:29
Linux中的几个命令详解
一,whoami
功能:用来显示当前登录到系统的用户是谁
二,who
功能:显示当前登录到系统上的用户是谁以及它所登录的终端
->who命令显示三个字段:
第一个字段:表示用户名称
第二个字段:表示的是用户从哪个终端登录进来的
第三个字段:表示用户的登录时间
终端的概念:
终端是一个物理设备,用户在登录系统的时候一定会关联至某个物理硬件设备,这个物理硬件设备就叫做终端。
对我们的Linux操作系统而言终端类型有以下几种:
->console(控制台):直接连接到物理主机上的物理设备,比如键盘,显示器,鼠标等等,控制台不是终端,它只是能够直接连接到物理设备上的显示界面,因为此时还没有用户登录,还没有用户的相关概念。
->pty(物理终端:physical termianl):终端指的是用户可以登录的,可以验证用户身份的物理设备,所以终端是软件和硬件的结合体,因为能够使用户登录系统的,可以验证用户身份的只有软件或者是进程,当我们的系统刚刚启动的时候,我们的显示器上就可以显示出来很多信息,此时这些信息是属于某个用户的,没有用户就无法关联至某个终端,此时的这个终端叫做物理控制台,此时的终端叫做物理终端,附加在VGA(显卡)卡上,在显示器上显示出来,物理终端指的是我们的设备已经被识别出来,但此前仍然和用户没有关联,通常情况下,控制台指的就是物理终端,物理终端指的就是控制台,大多数情况下二者不予区分。
->tty#(虚拟控制台,#表示第#个虚拟控制台):
虚拟控制台通常指的是附加在某个物理终端上的,并结合软件的方式模拟或虚拟出来的控制台,故称为虚拟控制台或模拟控制台,而且通常是在本地,大多数情况下被称为虚拟终端,附加在VGA卡上,在显示器上显示出来。
下图所示就是虚拟终端:
->ttyS#(串行终端,不附加在显卡上)
->pts/#(伪终端):
在为文件系统上生成的伪终端。
下图所示就是伪终端:
who命令的一些常用选项:
->-r:显示当前的运行级别
->-H:可以分别显示三个字段的名称
练习:用命令实现
查看hadoop是否登录到系统上来
练习:写一个脚本,要求
每隔5秒钟,就来查看hadoop用户是否登录了系统,如果登录了,就显示其已经登录,并退出脚本。
脚本内容:
脚本执行结果:
三,w命令
功能:显示当前登录到系统上的用户,并显示这些用户正在做什么事情。
比who命令显示的信息更详细。
四,last命令
功能:显示当前系统上的登录日志,显示都有谁曾经登录过系统,还有重启系统的历史。
->last其实是用来显示/var/log/wtmp文件内容的命令,这个文件的内容包括了用户的登录历史及系统的重启历史。
->last显示的是系统自安装之初到现在所有的信息,而我们可以利用last -n #选项来显示最近#次的信息。
四,lastb(bad)命令
功能:显示系统自安装支出起到现在,所又用户的错误登录尝试。
lastb命令其实是用来显示/var/log/btmp这个文件内容的命令,这个文件记录的内容就是,系统自安装之初起所有用户的错误登录尝试。
->lastb -n #:用来显示最近#次的错误登录尝试。
五,lastlog命令
功能:显示每一个用户最近一次的登录信息,不管用户有没有登录过系统,它都会显示。
->lastlog -u username:显示某用户最近一次的登录信息。
六,basename命令
功能:直接取得路径基名(文件名)
特殊变量->$0
执行脚本时的脚本路径及名称
七,mail命令
->mail命令用于打开自己的邮箱系统,在我们装完操作系统之后,默认的绝大多数情况下,系统默认的安装都会安装邮件服务,因为我们当前的操作系统上都会有很多的自动任务需要处理,这些自动任务的功能是监控你系统上资源的使用状况,比如说你的硬盘是不是快满了等等,如果你的硬盘快满了的话,系统就会自动向你的管理员或者是用户发一封邮件,告诉你你的硬盘快满了,所以说系统内部的通信或者是警告信息都是通过邮件来发送的,所以当前系统上的每一个用户都是可以收发邮件的,而且都会有自己的邮箱,收邮件的命令就是mail(也可以用来发送邮件),但是只能在本机上不同的用户之间进行邮件的发送。
在我们利用mail命令进入邮箱系统之后,上面显示的N(New)表示新邮件,底下的数字1表示第一封邮件,依次类推,后面接下来的信息分别显示的是邮件的发送者 发送时间 邮件主题。
要想查看某个邮件的内容,可以直接输入邮件的数字编号:
->mail命令用来查看邮件,但是如果邮件全部查看完成,新邮件就没有了,以前的邮件会被保存在对应用户家目录下的一个叫做mbox的文件里面。
->mail命令也可以用来发送邮件
用法格式:mail username
mail -s "..."可以用来指定发送邮件的主题:mail -s "..." username
练习:将/etc/fatab文件的内容发送给hadoop用户。
练习:使用输入重定向,将/etc/fstab文件的内容发送给redhat用户
八,hostname命令
功能:显示当前主机的主机名(实时显示)
也可以利用echo $HOSTNAME实现显示主机名的功能。只不过不是实时显示
->$HOSTNAME为Linux操作系统上的一个环境变量,用于保存当前主机的主机名,保存的是当前登录系统用户的主机名。
可以利用hostname命令更改主机名:
格式->hostname 主机名
练习:用命令实现
1,如果当前主机的主机名不是www.magedu.com,就把它改成www.magedu.com
2,如果当前主机的主机名是localhost,就把它改为www.magedu.com
3,如果当前主机的主机名为空或者为(none)或者为localhost,就把它改为www.magedu.com
上图中的-z指的是字符测试中的一个选项,功能是测试一个字符串是否为空
九,生成随机数
$RANDOM是我们系统上的一个环境变量,里面保存着0-32768之间的随机数。
->是由软件模拟生成的一个我们系统上的随机数生成器,只能用作测试使用,而不能用作软件加密使用。
我们Linux系统上有两类随机数生成器
它们是两个设备,只不过是由软件模拟产生的
在说随机数生成器之前,让我们先来说一说我们系统上的随机数是如何产生的
->我们的系统在维护上有一个熵池,随时保留当前系统上的随机数,随机数其实就是我们手指敲击键盘的时间间隔,对服务器而言,由于服务没有连接键盘,它会把某些硬件的中断请求的时间间隔当做随机数存储在熵池中,当我们需要用到随机数的时候,系统会自动到熵池中去取,随机数是直接被取走了,而不是复制的,所以随机数不会有重复,而且熵池也有可能被取空,此时我们可以通过频繁的敲击键盘来继续产生随机数供我们使用。
接下来我们再来说说我们系统上的两类随机数产生器->
1,/dev/random
2,/dev/urandom
random和urandom默认都在熵池中取随机数,如果熵池被取空,random会自动阻塞,等待你填充随机数,但是urandom会通过软件模拟的方式再次生成随机数,从而不会阻塞用户的进程,所以说urandom更好用,但是random更安全。
练习:写一个脚本,要求
利用RANDOM生成10个随机数,并找出其中的最大值和最小值。
脚本内容:
我们脚本内容的8行之所以要这么做的原因是$RANDOM中生成的随机数最小为0,所以不可能有比0还小的数出现,这样做的目的是提前给MIN一个值,否则,我们无法得到最小值,MIN永远都会是0,echo -n的意思是不换行输出。
脚本执行结果:
本文出自 “菜鸟的技术文档” 博客,请务必保留此出处http://zhubo.blog.51cto.com/11395641/1831214
- Linux中的几个命令
- Linux mount中的几个基本命令
- Linux Shell编程中的几个特殊符号命令 & 、&& 、 ||
- linux 常用几个命令
- 几个Linux 文件夹命令
- Linux的几个命令
- 几个linux命令
- 收录几个linux命令
- linux几个基本命令
- 几个linux命令记录
- 几个linux操作命令
- 几个Linux命令
- 几个Linux命令
- linux常用几个命令?
- Linux的几个命令
- LINUX 常用几个命令
- 几个linux命令
- Linux 几个生疏命令
- Linux特殊权限
- HDU 2089 数位DP 入门题
- 运行Android SDK Manager无法下载ARM EABI v7a System Image 、Intel x86 Atom System Image 和MIPS System Image
- Linux文件系统访问控制列表
- verilog 错误10028
- Linux中的几个命令
- 我喜爱的计算机书籍
- bash脚本编程之case语句及脚本选项进阶
- jquery 实现自定义下拉菜单实现
- 串结构练习——字符串连接
- 【奔跑的FPGA】part four 我的第一个FPGA工程
- aapt 在linux下的运行错误
- poj1094Sorting It All Out(拓朴排序)
- 深入理解kafka设计原理