当前位置:首页 > 嵌入式 > 嵌入式软件
[导读] 当你在终端或控制台上工作时,你可能想记录下自己做了些什么。这种记录可以看成是保存了终端痕迹的文档。假设你跟一些Linux管理员同时在系统上干活。或者说你让别人远程到

 当你在终端或控制台上工作时,你可能想记录下自己做了些什么。这种记录可以看成是保存了终端痕迹的文档。假设你跟一些Linux管理员同时在系统上干活。或者说你让别人远程到你的服务器。你就会想记录下终端发生过什么。要实现它,你可以使用script命令。

script是啥

script是将终端会话制成打印稿的命令。对于想重现终端输入输出历史的人来说,十分管用。而且,这些记录还能被保存或打印。

如何使用它

一般地,我们可以通过在终端上敲入script来启动它。

pungki@dev-machine:~$ script

Script started, file is typescript

pungki@dev-machine:~$

还可以指定一个目标文件来保存打印稿的结果。

当你再次收到一条命令提示,就说明终端上出现的任何东西,都将被记录下来。

不指定文件的话,你会看到在当前目录,有了一个叫“typescript”的文件。

为什么要用它

就像之前提到的,script的主要功能是记录一切。以下是两个展示其用途的示例场景。

与同事合作

当与同事协同工作时,我们可以使用script来记录自己的活动。

假设我们将使用一个叫collaborate的打印稿文件。像这样的话就输入:

接着,在干了一下事情之后,假设你想将你个工作交接给另一个工程师,那就发送那个文件吧。当他想回顾你做的事,只需打开那个文件便可。

如果他想在那个文件的基础上追加记录,可以使用-a选项。

记录他人活动

你可以让你的工程师或别的什么人远程登入到你的系统。为了确认他们做对了没,你可以记录下他们做了什么。想要script在登录时就生效,我们可以将其加在shell profile。如果你在使用bash,讲一下几行放进profile去吧。

$ vi ~/.profile

# run the script command to record everything

# use -q for quite and -a option to append the script

#

/usr/bin/script -qa /usr/local/script/log_record_script

然后保存。下次他再登录的时候,script就会自动运行并将记录追加在/usr/local/script/log_record_script

选项-q是安静模式。用户登录时完全不会察觉到script命令的运行。而选项-a是追加,不会覆盖以往的记录。

如果不用-q,用户登录时就会因如下画面而察觉script的存在。

停止记录

敲击ctrl+d或exit,可以停止记录。你会发现写入记录是发生在停止之后的。

结论

script命令对于记录终端历史还是挺有用的。将记录保存在文本文件,这样可以很方便地用任何文本编辑器打开。平时,我们可以使用man script或script -h来更深地挖掘它。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

CPU亲和度通过限制进程或线程可以运行的CPU核心集合,使得它们只能在指定的CPU核心上执行。这可以减少CPU缓存的失效次数,提高缓存命中率,从而提升系统性能。

关键字: Linux 嵌入式

北京2025年8月13日 /美通社/ -- 近日,搭载兆芯开先KX-7000高性能处理器的希沃华腾新一代计算终端产品应运而生,凭借应用数据互通、轻松批量部署、自有备授课软件等特色,为教学教研等工作的高效开展提供有力支撑和...

关键字: 终端 AI 数字化 通用处理器

在Linux系统性能优化中,内存管理与网络连接处理是两大核心领域。vm.swappiness与net.core.somaxconn作为关键内核参数,直接影响系统在高负载场景下的稳定性与响应速度。本文通过实战案例解析这两个...

关键字: Linux 内存管理

对于LLM,我使用b谷歌Gemini的免费层,所以唯一的成本是n8n托管。在使用了n8n Cloud的免费积分后,我决定将其托管在Railway上(5美元/月)。然而,由于n8n是开源的,您可以在自己的服务器上托管它,而...

关键字: 人工智能 n8n Linux

深圳2025年7月22日 /美通社/ -- 2025年7月16日,荣耀终端股份有限公司(以下简称"荣耀")与中国电信股份有限公司(以下简称&qu...

关键字: 中国电信 终端 荣耀 AI

在Linux系统管理中,权限控制是安全运维的核心。本文通过解析/etc/sudoers文件配置与组策略的深度应用,结合某金融企业生产环境案例(成功拦截98.7%的非法提权尝试),揭示精细化权限管理的关键技术点,包括命令别...

关键字: Linux 用户权限 sudoers文件

Linux内核中的信号量(Semaphore)是一种用于资源管理的同步原语,它允许多个进程或线程对共享资源进行访问控制。信号量的主要作用是限制对共享资源的并发访问数量,从而防止系统过载和数据不一致的问题。

关键字: Linux 嵌入式

在云计算与容器化技术蓬勃发展的今天,Linux网络命名空间(Network Namespace)已成为构建轻量级虚拟网络的核心组件。某头部互联网企业通过命名空间技术将测试环境资源消耗降低75%,故障隔离效率提升90%。本...

关键字: Linux 云计算

在Linux内核4.18+和主流发行版(RHEL 8/Ubuntu 20.04+)全面转向nftables的背景下,某电商平台通过迁移将防火墙规则处理效率提升40%,延迟降低65%。本文基于真实生产环境案例,详解从ipt...

关键字: nftables Linux

在Linux设备驱动开发中,等待队列(Wait Queue)是实现进程睡眠与唤醒的核心机制,它允许进程在资源不可用时主动放弃CPU,进入可中断睡眠状态,待资源就绪后再被唤醒。本文通过C语言模型解析等待队列的实现原理,结合...

关键字: 驱动开发 C语言 Linux
关闭