如何在终端登录时自动加载`script`命令


3

script命令允许在会话期间轻轻记录放入控制台的所有内容(如历史记录,但也显示命令结果)。一切都记录到文件中typescript.xxx

现在我想在已经运行的每个终端会话中运行它。我试图把scriptbashrc,但它落入递归循环(script正在运行它自己的壳)。有任何想法吗?

Answers:


1

添加

vi ~/.bash_profile

exec script

到底(这是登录时加载的最后一件事)。

您必须为每个用户执行此操作...但是应该完成工作。


1
这仅在用户启动登录非交互式shell时才有效。通常,打开终端会运行交互式shell,因此这不起作用。哦,为所有用户做,只需编辑/etc/profile
terdon 2013年

1

如果您可以强制所有shell都是登录shell,SnakeDoc的答案可能会有效。例如,如果您通过ssh连接远程服务器。如果这是您的本地计算机,并且您希望script每次打开终端时都运行,我能想到的唯一方法是使用终端的设置。

例如,使用我个人喜欢的终端(终结器,可在debian上安装sudo apt-get install terminator),您可以设置在打开终端时运行的特定命令。打开~/.config/terminator/config并将这些行添加到 [[default]]配置文件:

use_custom_command = True
custom_command = script -a

您也可以对其进行设置,以便script仅针对特定配置文件运行。在[[default]]配置文件后添加以下行:

[[script]]
  use_custom_command = True
  custom_command = script -a

这将创建一个新的配置文件script,您可以通过执行它来运行terminator -p script


gnome-terminal,您可以执行以下相同操作:

在此输入图像描述 在此输入图像描述 在此输入图像描述

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.