我希望它由传输客户端运行的PHP脚本!

在transmission-gtk中有一个选项可以运行脚本: 编辑>首选项>下载>调用脚本完成torrent

最近,我发现这个脚本我不知道如何使其在传输下工作。 根据程序描述,脚本不会关闭系统,但它可以在所有种子完成后终止传输。 这对我来说已经足够了,因为我可以通过&&将“ 关闭 ”链接到“ 关闭传输 ”。

现在,伙计们,帮助我在传输中运行这个PHP脚本吗?

这是脚本作者提到的一个例子: php.exe Transmission_Quit.php --port=9999 --hostname=192.168.0.1 ; 这是什么意思?! 我应该如何使用它? 我应该直接将其指向“ 在torrent完成时调用脚本 ”选项吗?

我要离开这个,以便跟进原来的问题,即要求运行特定的PHP脚本。 但是新配方部分提供了一种解决方法,以解决主要问题。

请尝试此操作并告知您的结果,之后可能会更改或删除此答案:

在某个时刻,您的密码可能会被询问。

  1. 首先,让我们通过删除终端sudo gedit script.php创建一个名为script.php的文件(请记住,您可以将此文件放在您希望的任何文件夹中,但出于测试目的,您的主文件夹将会很好)。
  2. 在文件中,让我们复制/粘贴您提到的脚本的内容。 保存文件并关闭它。
  3. 现在让我们给文件提供适当的文件权限和执行权限,方法是在终端中删除接下来的两行,一行一行。

    sudo chmod 755 script.php

    sudo chmod a + x script.php

  4. 现在,让我们通过放入终端sudo apt-get install php5-cli ,让我们等待终端完成安装过程。

一旦安装了php5-cli ,我们就可以通过调用php script.php --port=9999 --hostname=192.168.0.1;来测试脚本php script.php --port=9999 --hostname=192.168.0.1; 在终端中,但如果你从传输内部做到这一点会更好。

php5-cli是PHP5脚本语言的命令行解释器,运行这样的php脚本很有用,它更像是Windows的php.exe文件,你在原始问题上引用的那个。

我希望您成功,但请告知您的结果,以便提供适当的支持或删除此答案,如果没有用。

附录

看完你的评论后,我给你这个php脚本的快餐食谱。

首先,我需要解释脚本作者给出的示例中的某些内容,如下所示:

 script.php --port=9999 --hostname=192.168.0.1; 
  • --port=9999 = 9999是一个示例端口,但在此字段中,您应该编写在Web客户端选项卡上定义的相同端口号。
  • --hostname=192.168.0.1 =必须是您希望脚本运行以杀死传输进程的设备的IP。

这让我觉得可以远程调用该进程,但对于我们的特定情况,我们将使用默认值,这样我们就不需要既不包含端口也不包含主机名。 只需在终端中运行script.php文件或通过传输调用它,它将使用适用于我们的计算机的默认值( localhost )。

然后,让我们做快餐:

  1. 我们需要一个文件,让我们称之为bye.sh并将其放在某处,您的主文件夹是一个用于测试目的的好地方。
  2. 在文件中插入下一个( 快餐脚本 ),保存,关闭它并赋予它执行权限。 (作为参考,请回答这个问题并找到答案)。

在此处输入图像描述

  • 然后,在“传输”下载选项卡中提供它,但请确保在下载完成时包含要调用的正确的bye.sh文件。

在此处输入图像描述

而已。 我需要解释一下,不知何故,php脚本是成功的,但它在下载完成后观察了一小段延迟,我刚刚测试了2个小的torrent文件。 我不能说如果列表更长或下载大小更重,延迟会增加,新配方公式没有观察到这种行为。 但是,PHP文件为您提供保证,它将在任何支持PHP的操作系统中运行,我的新配方主要用于基于Linux的系统,它适用于Ubuntu并且可能在其他发行版中成功,基于Debian或Ubuntu,并且某些修改将允许它在其他非基于Debian / Ubuntu的发行版中取得成功。

祝好运!

新食谱

好的我有这个案例的新配方,我承认它得到了我的全部注意,即使我不经常使用传输。

食谱

配料

  1. 传输-gtk(以某种方式安装,从软件包,终端等)
  2. 传输-cli(sudo apt-get install tr​​ansmission-cli,提供密码,等待安装完成。)
  3. 剧本 。 (煮熟了)

制备

  • 让我们准备我们的传输,以便从外部接收Web客户端请愿,这样我们就可以监控我们程序中发生的事情。 让我们打开传输并转到“Web”选项卡,以启用“启用Web客户端”复选框,如下一屏幕截图所示。

在此处输入图像描述

(默认值将完美地完成)

  • 让我们打开我们最喜欢的文本编辑器,以创建一个名为byebye.sh的文件,让我们将下一个内容放在里面。 (见这里的脚本)

在此处输入图像描述

现在,让我们找到bybye.sh文件,并通过在终端sudo chmod a+x bybye.sh输入或通过在Nautilus中输入文件属性并激活“允许执行文件作为程序”复选框来为其提供正确的执行权限。 “权限”如下一个屏幕截图所示。

在此处输入图像描述

  • 一旦我们编写了脚本,让我们在终端drop中安装transmission-clisudo apt-get install transmission-cli ,按Enter键并提供密码,然后安装软件。

品尝时间

在终端中,丢弃transmission-remote --list | sed '1d;$d' | grep -v Done | wc -l transmission-remote --list | sed '1d;$d' | grep -v Done | wc -l transmission-remote --list | sed '1d;$d' | grep -v Done | wc -l之后结果可能因具体情况而异,具体取决于待传输或当前正在传输的种子数量。 如果结果不同于0我们就在路上。 如果您收到0并且正在下载或正在排队,则必须从头开始检查配方。 如果您收到错误,请将其放在评论中以提供支持。

  • 如果一切顺利,现在让我们指示传输在每次完成torrent时运行脚本。 冷静! 请冷静…脚本将在每次完全下载torrent时运行,但只有在下载结果等于零时才会触发终止传输的操作。 这种有条件的方式让我们感到安静,传输不会在每次下载时关闭。 为方便起见,提供了屏幕截图:

在此处输入图像描述

瞧! 配方可以大量提供,并与您的所有下载相结合。 如果上次下载成功,传输将关闭。

一些警告

如果传输只有一个待处理操作,并且下载在软件打开的那一刻结束,则传输将在打开后立即关闭。

名词解释:

killall -9 transmission =将以平缓模式关闭传输,以便每次关闭时都不会收到错误消息。 通过简单地使用killall transmission将以粗鲁的方式关闭它,因此软件将报告严重故障。

现在,在服务配方时,请确保在桌面上加入一杯含有优质古巴朗姆酒的玻璃杯……

祝好运!