chh/shellwords

Ruby 的 Shellwords.rb 的拙劣移植

v0.1.0 2012-12-28 15:47 UTC

This package is not auto-updated.

Last update: 2024-09-14 12:31:20 UTC


README

Shellwords 将参数字符串分割成单个参数的数组,类似于 Bourne Shell 的操作。这是 Ruby 标准库中的 Shellwords.rb 的拙劣移植。

安装

通过 composer 安装

{
    "require": {
        "chh/shellwords": "*"
    }
}

用法

要按照 Bourne Shell 的规则分割字符串,请使用静态的 split 方法。

<?php

use CHH\Shellwords;

$input = "'this is quoted' foo bar";

var_export(Shellwords::split($input));
# Output:
# array("this is quoted", "foo", "bar")

Shellwords 类还包含一个 join 方法,它使用 escapeshellarg 对每个数组元素进行转义,并用空格将它们连接起来。

<?php

use CHH\Shellwords;

$cmd = Shellwords::join(["ls", "-l", "some directory with spaces"]);
# 'ls' '-l' 'some directory with spaces'

`$cmd`;

许可证

MIT 许可证

版权所有 (c) 2012 Christoph Hochstrasser

在此,免费授予任何获取本软件及其相关文档文件(以下简称“软件”)副本的个人在不限制条件(包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件的副本,并允许向软件提供者提供软件的个人)使用该软件的权利,前提是遵守以下条件

上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。

软件按“原样”提供,不提供任何形式的保证,明示或暗示,包括但不限于适销性、特定用途的适用性和非侵权性。在任何情况下,作者或版权所有者不对任何索赔、损害或其他责任(无论基于合同、侵权或其他原因)承担责任,这些索赔、损害或其他责任源自、产生于或与软件或软件的使用或其他交易有关。