如何下载 .gz 并将其用作命令?

如何下载 .gz 并将其用作命令?

我最近需要安装一个命令来限制某个任务的 CPU 资源。(如果您有兴趣,来源在这里:http://www.willnolan.com/cputhrottle/cputhrottle.html

这个任务一直让我困惑,我从来没有通过互联网理解过。我下载了文件“cputhrottle.gz”

将其解压 (我相信它就像一个 zip 文件) 然后按照以下说明进行操作:

'(您必须在运行“gunzip cputhrottle.gz”后运行“chmod +x cputhrottle”,以使程序可执行。否则,它将无法正确启动。有些人注意到 gunzip 说该文件不是 gzip 格式。在这种情况下,请尝试将文件重命名为“cputhrottle”并按原样运行。我承认我不知道为什么会发生这种情况——可能是浏览器或网络服务器试图提供帮助但却失败了。)'

我剩下一个可执行文件。我不确定这是否是我想要的结果。我不知道如何将这个文件用作命令!

任何帮助和解释都将不胜感激!不过,我才 14 岁,对这种计算机语言的技术还不是最精通的,所以放轻松。:)

答案1

我最近需要安装一个命令来限制某个任务的 CPU 资源

从您提供的链接:

cputhrottle 是一个小型的 OS X 命令行实用程序。

您将无法像在 Linux 上那样运行它。

如果您能够在 Linux 上构建它,那么该链接还会告诉您如何运行它:sudo ./cputhrottle 328 25

如果你运行的是 OSX,你可以使用好的“以改变的调度优先级执行实用程序”


什么是 gz 文件以及如何打开 gz 文件?

GZ,即 GNU 压缩档案文件,是由 Jean-Loup Gailly 和 Mark Adler 开发的一款免费软件,用于替代早期 Unix 系统中的 Compress。它能够实现更好的压缩,并且不受专利算法的限制。GZ 被 GNU 项目采用,在互联网上相对流行。GZIP 生成的文件扩展名为 GZ,可以使用 GUNZIP 进行解压。

默认情况下,GZIP 会保留压缩文件中的原始文件名和时间戳。在使用选项 -N 解压文件时会用到这些内容。当压缩文件名被截断或文件传输后未保留时间戳时,此功能非常有用。

用户可以选择文件或文件夹,甚至一组文件和文件夹,并将其压缩为一个 GZ 文件。甚至可以将多个 GZ 文件压缩为一个 GZ 文件,或者将这些 GZ 文件放在文件夹中,然后将其压缩为一个 GZ 文件。GZIP 压缩技术和 GZ 压缩格式是为 Linux 系统开发的,尽管某些 Microsoft Windows 解压缩应用程序支持解压缩和打开这些 GZ 文件。Gzip 通常用于压缩单个文件。Mac 平台的用户也可以安装和使用一些兼容的 Mac 解压缩工具来打开和查看这些 GZ 文件的存档内容。

如何打开 .GZ 文件?

为了提取 .gz 文件,您可以使用 GZIP/GNUZIP 程序。这是一个用于文件压缩的​​软件应用程序。它基于 DEFLATE 算法,该算法是 LZ77 和 Huffman 编码的组合。

使用以下命令:

$ gunzip file.gz

来源什么是 gz 文件以及如何打开 gz 文件?


我为什么一定要跑chmod + x

运行“gunzip cputhrottle.gz”后必须运行“chmod +x cputhrottle”

为了在 Unix 上执行文件,它必须具有正确的权限。

chmod +x设置权限,以便程序可以X被剿灭。

修改模式了解更多信息。


我剩下一个可执行文件。那么我该如何将此文件用作命令呢?

您可以通过输入其名称来执行它。Unix 将查看以PATH尝试找到该命令。

如果它在当前目录中,则以下操作将起作用:

./cputhrottle 328 25

sudo在命令之前添加以超级用户身份运行:

sudo ./cputhrottle 328 25

须藤了解更多信息。


使用 nice、cpulimit 和 cgroups 限制进程 CPU 使用率

好的

nice 命令可调整进程的优先级,使其运行频率降低。当您需要将 CPU 密集型任务作为后台或批处理作业运行时,此功能非常有用。nice 级别范围从 -20(最有利的调度)到 19(最不利)。默认情况下,Linux 上的进程以 0 的优先级启动。nice 命令(不带任何附加参数)将以 10 的优先级启动进程。在该级别,调度程序会将其视为优先级较低的任务,并为其分配较少的 CPU 资源。

...

这实际上意味着,如果您想运行 CPU 密集型任务,您可以使用 nice 启动它,并且调度程序将始终确保其他任务优先于它。这意味着服务器(或桌面)即使在高负载下也能保持响应。

Nice 有一个关联命令,名为 renice。它可以更改已运行进程的 niceness 级别。要使用它,请找出占用所有 CPU 时间的进程的 PID(使用 ps),然后运行 ​​renice:

...

CPU限制

cpulimit 工具通过以不同的时间间隔暂停进程来限制进程的 CPU 使用率,使其保持在定义的上限以下。它通过向进程发送 SIGSTOP 和 SIGCONT 信号来实现这一点。它不会更改进程的 nice 值,而是监视和控制实际的 CPU 使用率。

当您想确保某个进程使用的 CPU 不超过一定比例时,cpulimit 非常有用。与 nice 相比,它的缺点是,当系统空闲时,进程无法使用所有可用的 CPU 时间。

来源使用 nice、cpulimit 和 cgroups 限制进程 CPU 使用率

答案2

经过努力思考这个问题之后,我相信我找到了答案。

.gz文件格式与常用的格式类似.zip,或者我见过更常用的格式。

解压后,双击unarchiverMac 上的工具即可完成工作,或者使用gunzip控制台中的命令来实现相同的结果:

gunzip cputhrottle.gz

之后,Finder 中只剩下一个看似毫无意义的文件,一个空白页图标。这是终端用来运行命令的文件。

然后运行该命令,将目录更改为文件.gz被提取的位置 - 很可能是您的下载 - 在这种情况下:

cd ~/Downloads

运行chmod命令使文件可执行

chmod +x cputhrottle

现在在 Finder 中,图标上会有“exec”字样,表示它现在可以执行。如果您将目录更改为此文件,则可以使用参数运行它。

假设您已经在目录中:

sudo cputhrottle [PID] [%CPU]

相关内容