linux 屏幕显示时间,linux终端,日期及echo的使用方法

一、Linux的用户

Linux是一个多用户多任务的操作系统,在复杂的企业环境中,同一时间登录系统的用户不在少数,为了方便管理,Linux有root用户和普通用户之分。root用户对系统有着绝对的权限,这就意味着一旦root用户被盗取,它有能力使这个系统崩溃,正常的生产情况下,root用户是被禁止登录系统的。普通用户的权限有限并且可以被灵活的限制,是我们工作时用到的用户。

怎样知道当前系统有哪些用户正在工作呢?这里有一些有帮助的命令1、whoami

[root@localhost ~]# whoami

root

whoami用于打印当前登录用户的用户名,相当于执行命令“id -un”,只有“--help”和“--version”两个选项,功能简单

2、who am i(或who 加任意两个字符串)[root@localhost yum.repos.d]# who am i

root     pts/0        2016-07-22 17:21 (10.1.250.61)

[root@localhost yum.repos.d]# who  a a

root     pts/0        2016-07-22 17:21 (10.1.250.61)

3、w[root@localhost ~]# w

18:20:01 up  1:12,  3 users,  load average: 0.00, 0.01, 0.05

USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT

root     tty1                      17:09   25.00s  0.50s  0.50s -bash

root     pts/0    10.1.250.61      17:21    1.00s  0.57s  0.05s w

root     pts/1    10.1.250.61      17:23   44:57   0.13s  0.13s -bash

w命令是一个比较全面的命令,它可以看到用户正在执行的程序

第一行的字段依次是系统当前时间,系统已经运行的时间,当前登录系统的用户数和系统在1分钟,5分钟和15分钟的平均负载

下面的行依次表达的意思是登录的用户名,终端名,远程的主机ip,登录时间,空闲时间,隶属于当前tty下所有进程占用CPU的时间,WHAT域即当前正在执行的程序所需要占用的CPU时间,正在执行的命令

二、Linux里的终端

物理终端:与Linux主机直接相连的鼠标,键盘等设备[root@localhost ~]# ls /dev/console

/dev/console

虚拟终端:附加于物理终端之上的,以软件实现的终端,ctrl+alt+{F1..F6},当图形界面启动时,F1为图像终端[root@localhost ~]# ls /dev/tty1

/dev/tty1

伪终端:图形界面里打开的终端和通过ssh连接的终端[root@localhost ~]# ls /dev/pts/

0  1  2  ptmx

pts可以开启无穷多个

查看当前的终端设备:tty

三、外部命令和内部命令

type查看命令类型

内置命令:shell自带的命令[root@localhost ~]# type cdcd is a shell builtin

[root@localhost ~]# type mkdirmkdir is /usr/bin/mkdir[root@localhost ~]# enable -n cd  #禁用某个内置命令

[root@localhost ~]# enable -a #列出内置命令的启用状态

[root@localhost ~]# enable cd #启用内置命令

注意,centos7里有些内置命令在PATH里有二进制可执行文件,但是没有相应功能

外部命令:在PATH里有二进制可执行文件,包括安装的应用命令

which,whereis可以查看命令的路径,which默认现在hash缓存里找,然后在找PATH[root@localhost ~]# whereis mkdir

mkdir: /usr/bin/mkdir /usr/share/man/man1/mkdir.1.gz /usr/share/man/man1p/mkdir.1p.gz /usr/share/man/man2/mkdir.2.gz /usr/share/man/man3p/mkdir.3p.gz

[root@localhost ~]# which mkdir

/usr/bin/mkdir

hash命令:当执行一个外部命令后(无论命令是否执行成功),hash会将命令路径缓存在hash表里[root@localhost ~]# mkdir

mkdir: 缺少操作数Try 'mkdir --help' for more information.

[root@localhost ~]# hash命中    命令

1    /usr/bin/whereis

1    /usr/bin/mkdir

删除缓存里的某个命令[root@localhost ~]# hash

命中    命令

1    /usr/bin/touch

1    /usr/bin/whereis

1    /usr/bin/mkdir

4    /usr/local/sbin/ls

[root@localhost ~]# hash -d ls

[root@localhost ~]# hash

命中    命令

1    /usr/bin/touch

1    /usr/bin/whereis

1    /usr/bin/mkdir

清空hash缓存[root@localhost ~]# hash -r

[root@localhost ~]# hash

hash: hash table empty

四、时间和日期

Linux有两种时间:

系统时间:有Linux内核根据CPU频率计算的

硬件时间:主板时间

date命令:系统时间[root@localhost ~]# date

Sun Jul 24 09:47:12 CST 2016[root@localhost ~]# date 082919482011.44  #设置系统时间,格式:月日时分年点秒

Mon Aug 29 19:48:44 CST 2011

[root@localhost ~]# date

Mon Aug 29 19:48:45 CST 2011

clock(hwclock):硬件时间[root@localhost ~]# clock

Sun 24 Jul 2016 09:50:57 AM CST  -0.461441 seconds

[root@localhost ~]# clock -s #根据硬件时间修改系统时间

[root@localhost ~]# clock -w #根据系统时间修改硬件时间

cal:显示日历[root@localhost ~]# cal

July 2016

Su Mo Tu We Th Fr Sa

1  2

3  4  5  6  7  8  9

10 11 12 13 14 15 16

17 18 19 20 21 22 23

24 25 26 27 28 29 30

31[root@localhost ~]# cal 9 1752 #Linux中特殊的一个月份

September 1752

Su Mo Tu We Th Fr Sa

1  2 14 15 16

17 18 19 20 21 22 23

24 25 26 27 28 29 30

nano:文本编辑器(基本不用这个)

五、Linux字符界面下的桌面共享(必须是同一个用户登录同一个主机才有效)

screen:

[root@localhost ~]# screen -S help #创建一个新的screen会话

[root@localhost ~]# screen -x help #加入一个会话

[root@localhost ~]# exit #退出会话(两边同时退出)

[root@localhost ~]# screen -ls   #显示已存在的会话信息There is a screen on:    2899.help    (Attached)1 Socket in /var/run/screen/S-root.六、echo命令,显示字符

echo中引号的区别:

双引号:弱引用,变量会替换,可以识别`和$和\

单引号:强引用,引号里的内容原封不动的打印到屏幕

反引号:会将引号中的内容当作shell命令执行,也能替换其中的变量但是只有变量会报错然后将变量替换,它与$( )的作用相同[root@localhost ~]# echo `$LANG`

bash: en_US.UTF-8: command not found...

[root@localhost ~]# echo `echo $PATH`

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

echo打印转义字符要加-e选项[root@localhost ~]# echo "\nieda"\nieda

[root@localhost ~]# echo -e "\nieda" #shell中\n为换行ieda

[root@localhost ~]# echo -e "\ieda"\ieda

由上可以看出,不加-e将打印特殊字符的本身含义,加-e后会把特殊字符当做特殊的含义

echo的选项:

-n #不再字符最后自动换行[root@localhost ~]# echo -n ned a

ned a[root@localhost ~]#

shell中echo打印颜色[root@localhost ~]# echo -e "\033[41;31mHello World!\033[0m"

bash: !\033[0m": event not found

#打印的内容在开头和结尾不能有特殊字符[root@localhost ~]# echo "\033[41;31mHello World\033[0m"

\033[41;31mHello World\033[0m

#打印颜色必须加-e选项进行转义[root@localhost ~]# echo -e "\033[41;31mHello World\033[0m"

Hello World

其中41中的4表示背景色,31中的3是字符颜色,31和41可以调换位置

最后的0m表示颜色的作用范围结束.........举个例子[root@localhost ~]# echo -e "\033[33;41mHello World\033["

Hello World[root@localhost ~]# [root@localhost ~]#

shell中颜色的种类从1到7依次是 :红绿黄蓝紫天(蓝)白

如何打印一个闪烁的三角形?[root@localhost ~]# echo -e "\033[31;5m   *   \n  ***  \n*******\033[0m"

*

***

*******

其中的5代表给打印文本添加闪烁的效果,为了更直白可以不加背景颜色

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值