自制Linux终端锁屏工具

 更新时间:2016年08月08日 16:14:38   作者:Marksinoberg  
这篇文章主要为大家详细介绍了如何自制Linux终端锁屏工具,具有一定的实用性,感兴趣的小伙伴们可以参考一下

很多时候我们不能一直守护在自己的电脑旁边,而且有些文件并不想让别人知道。那么这时候来个锁屏,是再合适不过的了。今天分享一个自制的锁屏工具,如下。

准备
 •操作系统 : 我这里是ElementaryOS虚拟机 + XShell 远程登录工具
 •Shell语言 : 我使用的是默认的Bash Shell
 •其他小工具 : 
        ◦fortune:系统随机的从语库中选出一句英文成语。
        ◦cowsay : 在终端界面上显示出一个奶牛的语句框,配合管道连接上fortune,效果完美!

 代码

#!/bin/bash
#scriptname:locktty
#writed by :Marksinoberg
#description : just for protecting our message when we leave away. And we can set the password every time.

reset;clear #清除屏幕
info="Please input the password you will use later!"
cowsay $info
read mypassword
echo "Screen will locked in 7 seconds!"
sleep 7
clear
#!/bin/bash
#scriptname:locktty
#writed by :javalee
#script start...
reset;clear #清除屏幕
info="Please input the password you will use later!"
cowsay $info
read mypassword
echo "Screen will locked in 7 seconds!"
sleep 7
clear
#加上这个倒记时的小东东,;)

trapper () { #建立个函数
trap ' ' 2 3 20 #忽略CTRL+C CTRL+\ CTRL+Z信号
}
while : #进入死循环
do
trapper #调用函数
printf "\n\n\n\n\n\n\n\n\t\t\tPlease enter unlock code:" | cowsay
stty -echo  #屏蔽输入的字符
read input
case $input in
$mypassword)
printf "\t\t Hello $USER,Today is $(date +%T)\n"
stty echo  
break ;;  #输入正确,挑出循环回到命令行
*)echo "Do not check my files,please! See as follows:"
sleep 3
clear
continue ;;  #否则,继续循环
esac
done

运行演示

程序运行开始:

mark@mark:~/temp/myscripts$ ./lockscreen.sh


 ______________________________________
/ Please input the password you        \
\     will use later!                  /
 --------------------------------------
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||
123
Screen will locked in 7 seconds!

由于静态文本没办法显示程序执行过程中的动态效果,所以直接看解锁界面吧
当我们输入不正确的密码的时候,系统会提示输入错误,以及一个幽默的“警告”

 ___________________________
/                           \
\ Please enter unlock code: /
 ---------------------------
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||
Do not check my files,please! See as follows:
 _________________________________________
/ Q: Why is it that the more accuracy you \
| demand from an interpolation            |
|                                         |
| function, the more expensive it becomes |
| to compute? A: That's the Law of Spline |
\ Demand.                                 /
 -----------------------------------------
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||

当我们密码输入正确的时候,如下:

 ___________________________
/                           \
\ Please enter unlock code: /
 ---------------------------
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||
         Hello mark,Today is 06:35:05

结语

代码还是很简单的,仅仅用到了shell脚本语法的几个小命令。希望我这个脚本能抛砖引玉,打开你的思路,做出更好的锁屏小脚本!

相关文章

  • centos 6.3 最小安装系统下快速搭建环境步骤分享

    centos 6.3 最小安装系统下快速搭建环境步骤分享

    这篇文章主要介绍了centos6.3 最小安装系统下快速搭建环境,
    2013-04-04
  • Ubuntu下使用python3中的venv创建虚拟环境

    Ubuntu下使用python3中的venv创建虚拟环境

    这篇文章主要介绍了Ubuntu下使用python3中的venv创建虚拟环境,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-12-12
  • Linux7.7设置交换分区SWAP的方法

    Linux7.7设置交换分区SWAP的方法

    这篇文章主要介绍了Linux7.7设置交换分区SWAP的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-11-11
  • Linux安装及管理软件程序全过程

    Linux安装及管理软件程序全过程

    本文介绍Linux系统中软件的安装方式,包括源码编译、rpm安装和yum安装,及其各自的优缺点,同时,详细解析了rpm和yum的包管理工具使用方法,包括命令操作和配置管理,为Linux用户提供全面的软件安装与管理指南
    2024-11-11
  • Linux中利用grep命令如何检索文件内容详解

    Linux中利用grep命令如何检索文件内容详解

    这篇文章主要给大家介绍了关于Linux中利用grep命令如何检索文件内容的相关资料,并且给大家简单介绍了关于Linux grep和find的区别,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
    2017-11-11
  • 详细介绍通过配置Apache实现404页面替换

    详细介绍通过配置Apache实现404页面替换

    这篇文章主要介绍了详细介绍通过配置Apache实现404页面替换的相关资料,这里提供实现方法,希望能帮助到大家,需要的朋友可以参考下
    2017-08-08
  • 用apache和tomcat搭建集群(负载均衡)

    用apache和tomcat搭建集群(负载均衡)

    这篇文章主要介绍了用apache和tomcat搭建集群,实现负载均衡,需要的朋友可以参考下
    2014-12-12
  • Linux内核启动参数详解

    Linux内核启动参数详解

    Linux内核在启动的时候,能接收某些命令行选项或启动时参数。当内核不能识别某些硬件进而不能设置硬件参数或者为了避免内核更改某些参数的值,可以通过这种方式手动将这些参数传递给内核。
    2017-10-10
  • linux环境下恢复rm误删的文件方法

    linux环境下恢复rm误删的文件方法

    大家好,本篇文章主要讲的是linux环境下恢复rm误删的文件方法,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下哦
    2021-11-11
  • ubuntu14.04安装opencv3.0.0的操作方法

    ubuntu14.04安装opencv3.0.0的操作方法

    下面小编就为大家分享一篇ubuntu14.04安装opencv3.0.0的操作方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2017-12-12

最新评论