树莓派如何定时截屏

时间:2013年08月17日 7:59 星期六 栏目:未分类 作者: 评论:0 点击: 1,613 次

树莓派一般都是通过远程控制的方式进行操作,但有时就是需要看一下tty7的屏幕,没接显示器怎么办?

应该是可以让VNC与TTY7同步的,但是目前能力有限,不知道要怎么实现。退而求其次,定时截屏。

这要用到一个好用的小程序:scrot。

首先是安装 scrot

1
 sudo apt-get install scrot

在X下面运行scrot 命令就是截屏并保存为命令目录下的png图片。

我们先创建一个脚本来运行 scrot

1
 nano zt.sh

然后输入代码

1
2
3
4
5
6
7
8
9
 #!/bin/bash
sudo xset s off
sudo xset -dpms
while true
do
   sleep 60
   scrot -e 'mv $f /home/pi/img/'
   sleep 3540
done

ctrl+x 保存退出。

前两行是关闭屏保及显示器休眠(树莓派的debian可以这样设置,其它版本没试过),如果不关闭这两个设置,过一段时间就只能截到一堆名画“夜行乌鸦”。
后面代码是隔60秒,截一下屏,然后把图片保存到 /home/pi/img 的目录下,所以要先创建这个img目录。延时3540秒再执行一次。也就是一小时抓一次屏,之所以在前面sleep 60秒,是因为我设置为进入X界面就运行,如果不延时,一开始就只能截到一张壁纸。

如何让这个脚本随X界面启动?

1
 sudo nano /etc/xdg/lxsession/LXDE/autostart

添加一行

1
 @/usr/bin/lxterminal --geometry=2x2 -e /home/pi/zt.sh

ctrl+x 保存退出就OK了。

然后给梅莓派装一个FTP服务端,就可以用FTP工具查看和删除这个图片了。

如果要随时执行截屏呢?一个思路是让脚本循环判断某文件是否存在,存在的话就截屏然后删除文件。要截屏时就通过FTP上传一个文件就行了。

==================2013.08.19==================

经过测试,通过上传脚本在TTY7执行命令的方法可以实行。
新建cmd目录:

1
 mkdir cmd

新建cmd.sh(并加可执行属性)

1
 nano cmd.sh

键入内容:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 #!/bin/bash
#cmd.sh
#指定文本文件,及被执行后把文件拷到SD卡上去,注意目录不同。
fn="/home/pi/cmd/cmd.txt"
fn_old="/home/pi/cmd.txt.old"
#每10秒检查一下cmd.txt,如果存在就执行文件里的命令。执行后移开脚本文件。
while true
do
	sleep 10
	if [ -f "$fn" ];then
	 cat "$fn"|sh
	 mv "$fn" "$fn_old"
	 echo "OK!-"
	 echo `date`
	fi
done

Ctrl+X保存之后,给文件上执行属性:

1
 sudo chmod +x cmd.sh

随便X界面启动:

1
 sudo nano /etc/xdg/lxsession/LXDE/autostart

在里面加上一行:

1
 @/usr/bin/lxterminal --geometry=2x2 -e /home/pi/cmd.sh

重启之后就会执行cmd.sh
通过FTP上传或新建cmd.txt文件到 /home/pi/cmd/ ,10秒之内文件里的shell命令就会被执行,执行后cmd.txt会被改名保存到 /home/pi/

相关文章

树莓派如何定时截屏:等您坐沙发呢!

发表评论

您必须 [ 登录 ] 才能发表留言!

Baidu提供的广告

最近访客

    最新评论