Sean Clark Hess Asked: 2010-03-07 07:13:31 +0800 CST2010-03-07 07:13:31 +0800 CST 2010-03-07 07:13:31 +0800 CST CentOS 使用较旧的“拆分”命令?如何更新? 772 我正在运行 Centos 5.3,并将split其用作数据导入的关键部分。服务器上运行的 split 版本似乎不支持-p(模式匹配)。 服务器上的版本是split (GNU coreutils) 5.97,而我的 mac 上的版本是-p,不响应 -v 或 --version 。 yum list split没有提及任何事情。我怎样才能-p上去? linux centos yum vps 2 个回答 Voted Best Answer warren 2010-03-07T07:38:25+08:002010-03-07T07:38:25+08:00 简短的版本是您正在查看splitLinux 上的 GNU 版本和 Mac 上的 BSD 版本。 我的猜测是你可以下载 BSD 版本的源代码并在你的 Linux 主机上编译它——但我从未尝试过这样的操作。此外,如果您这样做了 - 升级 GNU coreutils 将来可能会破坏它。 http://plug-and-pray.blogspot.com/2009/11/how-to-split-large-files-in-linux-and.html Jmarki 2010-03-07T11:37:00+08:002010-03-07T11:37:00+08:00 我的猜测是尝试在 CentOS 上编译更新版本的 coreutils,然后将 split 复制到一个特殊的目录中,可能与您的脚本相同的目录)。不过要注意默认的 PATH,它不应该在任何系统路径中。您可能还想将 split 重命名为其他名称,例如 newsplit。 然后需要修改您的脚本以使用此版本的拆分(新闻拆分)。这可以通过多种方式完成,例如更改脚本中的 PATH 变量,或使用 split/newsplit 的完整路径。我通常在 bash shell 中执行此操作: #!/bin/bash _CAT="/usr/bin/echo" _SPLIT="${PWD}/newsplit" ${_CAT} filename.txt | ${_SPLIT}
简短的版本是您正在查看
split
Linux 上的 GNU 版本和 Mac 上的 BSD 版本。我的猜测是你可以下载 BSD 版本的源代码并在你的 Linux 主机上编译它——但我从未尝试过这样的操作。此外,如果您这样做了 - 升级 GNU coreutils 将来可能会破坏它。
http://plug-and-pray.blogspot.com/2009/11/how-to-split-large-files-in-linux-and.html
我的猜测是尝试在 CentOS 上编译更新版本的 coreutils,然后将 split 复制到一个特殊的目录中,可能与您的脚本相同的目录)。不过要注意默认的 PATH,它不应该在任何系统路径中。您可能还想将 split 重命名为其他名称,例如 newsplit。
然后需要修改您的脚本以使用此版本的拆分(新闻拆分)。这可以通过多种方式完成,例如更改脚本中的 PATH 变量,或使用 split/newsplit 的完整路径。我通常在 bash shell 中执行此操作: