标签:shell date echo alias screen vmware tools
Shell
date
echo
alias
screen
安装VMware Tools
Shell
用途说明
人机交互接口
Shell是Linux系统的用户界面,是用户操作Linux系统的一个直接工具,亦即人机交互接口,其既为用户提供了一个命令界面,也为用户命令提供解释执行的能力,故而Shell也称为Linux的命令解释器(command interpreter)。
在Shell中可执行的命令分为两类,内置命令与外部命令,所谓内置命令,即shell自带的命令,可通过enable命令启用或禁用;所谓外部命令,即系统某路径下对应的可执行程序文件;此路径可通过 which 和 whereis 进行查询。另外,type 命令可区分内置命令与外部命令。
当执行一个外部命令后,其后缓存到内存中,可用 hash 命令进行查看,hash -d 可清除指定的命令缓存,hash -r 则表示清除所有缓存。
date
用途说明
显示与修改时间
时间是一个永恒的话题,而 date 命令就是显示日期与时间的。在Linux系统中,时间分为系统时钟与硬件时钟,所谓系统时钟,就是由Linux内核通过CPU的工作频率而确定的;所谓硬件时钟,就是由主板上BIOS中的时间,由主板电池供电来维持运行。
+: 使用加号,自定义日期格式
-u: --utc,以UTC形式显示时间与日期
%D: 输出年/月/日的格式
%F: 输出年-月-日的格式
查看系统时钟
[root@centos7 ~]# dateFri Jul 22 22:56:48 CST 2016
查看硬件时钟
[root@centos7 ~]# clockFri 22 Jul 2016 11:01:24 PM CST -0.557614 seconds
或者使用~]# hwclock 也行!
值得注意的是,系统时钟与硬件时钟有时会不一致,此时我们需要以准确的一个为标准而调整另一个。比如我们将系统时间设置为2008-08-0808:00,以硬件时间为标准调整系统时间:
[root@centos7 ~]# date 080808082008Fri Aug 8 08:08:00 CST 2008 [root@centos7 ~]# hwclockFri 22 Jul 2016 11:11:54 PM CST -0.369548 seconds [root@centos7 ~]# clock -s [root@centos7 ~]# date Fri Jul 22 23:12:15 CST 2016 [root@centos7 ~]#
当然,如何是要以系统时间为基准而调整硬件时间,则使用clock -w.
查看昨天的时间
[root@centos7 ~]# date -d yesterdayThu Jul 21 23:22:14 CST 2016
查看全日期
[root@centos7 ~]# date +%Y-%m-%d 2016-07-22 [root@centos7 ~]# date +%F 2016-07-22 [root@centos7 ~]# [root@centos7 ~]# date +%m/%d/%Y 07/22/2016 [root@centos7 ~]# date +%D 07/22/16
查看这一年过了多少天
[root@centos7 ~]# date +%j204
查看格林威治时间
[root@centos7 ~]# date -uFri Jul 22 15:28:10 UTC 2016
查看1970-01-01-00-00至今经过多少秒
[root@centos7 ~]# date +%s1469201497
为啥要查这个时间,呵呵,1970年乃Unix诞生之日!既然说到时间,再看看cal吧!
查看日历
[root@centos7 ~]# 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@centos7 ~]# cal 2 2020 February 2020 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 [root@centos7 ~]# #再看一个有意思的事! [root@centos7 ~]# cal 9 1752 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 [root@centos7 ~]# #哇,时间怎么会“飞跃”呢?!
echo
用途说明
echo命令的主要作用为打印文本信息与确定环境变量的值
echo会将输入的字符串送往标准输出,而输出的字符串默认会加上换行号。
echo "$VAR_NAME": 变量会替换,双引号表弱引用
echo ‘$VAR_NAME‘: 变量不会替换,单绰号表强引用
-n: 取消自动换行
-e: 打印转义字符
若字符串中出现以下字符,-e 选项不会将其当成一般的文字处理,而是以下面的方式进行特殊处理:
\a 发出警告声 \b 退格键 \c 最后不加上换行符号; \n 换行且光标移至行首; \r 光标移至行首,但不换行; \t 插入tab; \\ 插入\ 字符; \0nnn 插入nnn(八进制)所代表的ASCII字符 echo -e "\033[43;31mred color\033[0m" \xHH 插入HH(十六进制)所代表的ASCII字符
命令扩展行:$( ) 或 ``
取消自动换行
[root@centos7 ~]# echo liansirliansir [root@centos7 ~]# echo -n liansirliansir[root@centos7 ~]#
对输出信息进行转义
[root@centos7 ~]# echo -e "\a" #一块清脆的蜂鸣声从耳旁闪过 [root@centos7 ~]# echo -e "liansir\c" liansir[root@centos7 ~]# [root@centos7 ~]# echo -e "lian\rsir" sirn [root@centos7 ~]# echo -e "lian\tsir" lian sir [root@centos7 ~]# echo -e "lian\\sir" lian\sir [root@centos7 ~]# echo -e "lian\0110sir" lianHsir [root@centos7 ~]# echo -e "\033[43;31mred color\033[0m" red color #red color显示为黄底红字! [root@centos7 ~]# echo -e "lian\xACsir"liansir
使用扩展行
把一个命令的输出打印给另一个命令的参数:$() 或 ``
[root@centos7 ~]# hostname centos7.liansir [root@centos7 ~]# echo "This system‘s name is $(hostname)" This system‘s name is centos7.liansir [root@centos7 ~]# echo " i am `whoami` " i am root
括号扩展
打印重复字符串的简要形式:{}
[root@centos7 ~]# echo file{1,3,5} file1 file3 file5 [root@centos7 ~]# rm -f file{1,3,5}
查看环境变量的值
[root@centos7 ~]# echo $USERroot [root@centos7 ~]# echo $PATH/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin [root@centos7 ~]#
alias
用途说明
设置命令别名
在linux系统中,如果命令太长,也不符合用户习惯,那么,我们可以用 alias 这个命令来进行命令的别名设置,以提高我们的工作效率。
alias 或 alias -p
:显示所有的命令别名
alias name=‘COMMAND‘
:别名定义格式
alias name
:显示指定的别名设置
unalias name
:取消指定的别名设置
显示当前的别名设置
[root@centos7 ~]# alias alias cp=‘cp -i‘ alias egrep=‘egrep --color=auto‘ alias fgrep=‘fgrep --color=auto‘ alias grep=‘grep --color=auto‘ alias l.=‘ls -d .* --color=auto‘ alias ll=‘ls -l --color=auto‘ alias ls=‘ls --color=auto‘ alias mv=‘mv -i‘alias rm=‘rm -i‘ alias which=‘alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde‘ [root@centos7 ~]# type alias alias is a shell builtin
设置与取消别名
[root@centos7 ~]# alias clr=‘clear‘ [root@centos7 ~]# unalias clr
由此可见,不管是内置命令还是外部命令,都是可以设置别名的,而在命令的执行中,内置命令的执行级别是高于外部命令的,那别名又处在什么等级呢?别名的执行等级是高于内置命令的。思考:如何证明呢?
screen
用途说明
远程会话管理
系统管理员有时需要SSH或telnet到Linux服务器,进行一些较耗时的常规操作,如系统备份、ftp传输等,一般我们会为这样的一个任务开启一个远程终端窗口。注意,期间不允许中断连接,否则相关任务则前功尽弃。另外,成功发起一个会话请求的前提条件是:同一用户登陆同一主机。
-S: sessionname,会话请求
-ls: 显示所有已经打开的screen.
-x: Attach to a not detached screen session,登陆没有分离的会话
-r: sessionowner/[pid.tty.host],恢复某screen.
Ctrl+a,d: 剥离当前screen.
用户A发起会话请求
[root@centos7 ~]# screen -S sirhelp [root@centos7 ~]#
用户B查看会话请求
[root@centos7 ~]# screen -ls There are screens on: 12172.sirhelp (Attached) 12121.sirhelp (Attached) 12083.sirhelp (Attached) 3335.help (Detached) 4 Sockets in /var/run/screen/S-root. [root@centos7 ~]#
用户B登陆会话请求
[root@centos7 ~]# screen -x 12172 [root@centos7 ~]#
此时,用户A与用户B实现会话共享!即双方的界面操作对方都能看见!
安装VMware Tools
用途说明
实现物理机与虚拟机之间的无缝操作
所谓无缝操作,如可以实现物理机与虚拟机之间的文件可以直接来回复制、粘贴等。
在VMware中,点击虚拟机,选择安装VMware Tools.
使用df命令,查看VMware Tools的位置
将VMwareTools-###.##.tar.gz复制到要安装的目录
进入自定义的安装目录,解压.tar.gz包,cd vmware-tools-distrib目录下
安装.pl文件,./ vmware-install.pl d (加上d可默认安装)
重启系统,reboot或init 3 然后 init 5
[root@centos6 ~]# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/sda2 100660656 4589248 90951408 5% / tmpfs 953648 224 953424 1% /dev/shm /dev/sda1 194241 39141 144860 22% /boot /dev/sda3 20027260 333816 18669444 2% /testdir /dev/sr0 72414 72414 0 100% /media/VMware Tools [root@centos6 ~]# cd /media/VMware\ Tools/ [root@centos6 VMware Tools]# lsmanifest.txt VMwareTools-10.0.6-3595377.tar.gz vmware-tools-upgrader-64 run_upgrader.sh vmware-tools-upgrader-32 [root@centos6 VMware Tools]# cp VMwareTools-10.0.6-3595377.tar.gz /testdir [root@centos6 testdir]# tar xvf VMwareTools-10.0.6-3595377.tar.gz [root@centos6 testdir]# cd vmware-tools-distrib/ [root@centos6 vmware-tools-distrib]# ls bin doc FILES installer vgauth vmware-install.real.pl caf etc INSTALL lib vmware-install.pl [root@centos6 vmware-tools-distrib]# ./vmware-install.pl d
当出现以下Enjoy时,表明你已安装成功,重启系统,发现centos 6的界面变大了!
Enjoy, --the VMware teamFound VMware Tools CDROM mounted at /media/VMware Tools. Ejecting device /dev/sr0 ...
小练习
利用date命令显示前10与后20天的年月日
[root@centos7 ~]# date -d "-10 day" +%Y-%m-%d 2016-07-13 [root@centos7 ~]# date -d "+20 day" +%Y-%m-%d 2016-08-12
利用echo命令显示一个闪烁带下划线五彩的倒三角
[root@centos7 ~]# echo -e "\033[1;31;5;4m*******\n\e[0m \033[2;32;5;4m*****\n\e [0m \033[3;33;5;4m***\n\e[0m \033[4;34;5;4m*\e[0m" ******* ***** *** * [root@centos7 ~]#
2016.7.23
本文出自 “止战” 博客,请务必保留此出处http://liansir.blog.51cto.com/9372908/1829105
标签:shell date echo alias screen vmware tools
原文地址:http://liansir.blog.51cto.com/9372908/1829105