【问题标题】:How to periodically 'touch' temporary files on remote server so the files don't get deleted如何定期“触摸”远程服务器上的临时文件,以免文件被删除
【发布时间】:2022-01-24 20:07:57
【问题描述】:

我使用 SAS/Emacs 登录到远程服务器。在服务器上,有这个空间可以让我保存大约一周的文件。除非我再次刷新或“触摸”这些文件,否则它们将在一周后被删除。是否有一个宏或代码可以在我打开 SAS/EMACS 时执行以使这些文件保持更新?

到目前为止,我已经使用 SSH 连接到服务器并键入“touch /*”以保持它“被触动”,但我希望有更好/更有效的方法来保持这些文件被触动。

【问题讨论】:

  • 为什么不直接使用 SAS 代码来运行 touch 命令?
  • 您的 SAS 安装是否启用了 XCMD?如果是这样,您可以编写一个小程序,并在每次启动 SAS 时将其作为 autoexec 的一部分运行。
  • @Tom,我为我的无知道歉,但是运行 touch 命令的 SAS 代码是什么?
  • @Reeza,对不起,我对所有这些东西真的不太了解,所以我不知道 XCMD 是什么。但我确实有一个包含我编写的所有宏的 autoexe。我敢肯定这不能回答你的问题。
  • 你真的想在接下来的一周内依赖使用 Emacs 吗?!或者您是否在该远程主机上长期运行 Emacs 服务器(因此它很适合做这些事情)?

标签: emacs sas remote-access remote-server


【解决方案1】:

假设您使用 EMacs Speaks Statistics 连接到 SAS,那么您有几个不同的选择。

一种是修改ess-sas-submit-command 指向一个脚本,该脚本首先执行您的“触摸”命令,然后然后启动SAS。

另一种方法是为 SAS 创建一个自动执行程序来为您执行此操作,假设您有权这样做;您可以将其添加到 various locations in Unix 或命令行本身(取决于您启动 SAS 的方式)。

即使您不使用 ESS,Autoexec 方法也可能适合您。

请注意,当然,您的系统管理员可能不喜欢这样做,因此请确保这是允许的(除非您是系统管理员!)。

【讨论】:

  • 谢谢,@Joe。现在,对于您的第一个建议,目前,我有 ess-sas.el 文件,其中包含以下代码 '(setq-default ess-sas-submit-command "C:/Progra~1/SASHome/SASFoundation/9.4/sas.exe “)”。您知道如何添加“触摸”线吗?
  • 您指向该变量的(新)程序必须做两件事——触摸文件,然后运行您当前正在运行的命令。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-02-01
  • 2017-01-13
  • 1970-01-01
  • 1970-01-01
  • 2012-04-11
  • 1970-01-01
  • 2011-04-06
相关资源
最近更新 更多