Wrangler command-line directives Stay organized with collections Save and categorize content based on your preferences.
This page describes the directives you can use in Wrangler.
In WranglerPower mode (the Wrangler CLI), you can add directivesand functions to a recipe. For more information, seeWrangler CLI Directives andWrangler Functions.
Wrangler supports the following directives:
Column operations
| Directive | Description |
|---|---|
| Change Column Case | Changes column names to either lowercase or uppercase. |
| Changing Case | Changes the case of column values. |
| Cleanse Column Names | Sanitizes column names, following specific rules. |
| Columns Replace | Alters column names in bulk. |
| Copy | Copies values from a source column into a destination column. |
| Drop Column | Drops a column in a record. |
| Fill Null or Empty | If the value is null or empty, enters a fixed column value. |
| Keep | Keeps specified columns from the record. |
| Merge | Merges two columns by inserting a third column. |
| Rename | Renames an existing column in the record. |
| Set Headers | Sets the names of columns, in the order they're specified. |
| Split to Columns | Splits a column based on a separator into multiple columns. |
| Swap | Swaps column names of two columns. |
| Set Type | Converts the data type of a column. |
Date transformations
| Directive | Description |
|---|---|
| Diff Date | Calculates the difference between two dates. |
| Format Date | Custom patterns for date-time formatting. |
| Format UNIX Timestamp | Formats a UNIX timestamp as a date. |
Datetime transformations
| Directive | Description |
|---|---|
| Current Datetime | Generates current datetime with a given time zone. |
| Datetime to Timestamp | Creates a timestamp from datetime and given time zone. |
| Format Datetime | Formats datetime to a string of a given format. |
| Timestamp to Datetime | Converts a timestamp to datetime. |
Encoders and decoders
| Directive | Description |
|---|---|
| Decode | Decodes a column value as one ofbase32,base64, orhex. |
| Encode | Encodes a column value as one ofbase32,base64, orhex. |
Hashing and masking
| Directive | Description |
|---|---|
| Hash | Generates a message digest. |
| Mask Number | Applies substitution masking on the column values. |
| Mask Shuffle | Applies shuffle masking on the column values. |
Lookups
| Directive | Description |
|---|---|
| Catalog Lookup | Static catalog lookup of ICD-9, ICD-10-2016, and ICD-10-2017 codes. |
| Table Lookup | Performs lookups into Table datasets. |
Natural language processing
| Directive | Description |
|---|---|
| Stemming Tokenized Words | Applies the Porter stemming algorithm for English words. |
Output Formatters
| Directive | Description |
|---|---|
| Write as CSV | Converts a record into CSV format. |
| Write as JSON Map | Converts the record into a JSON map. |
| Write JSON Object | Composes a JSON object based on the fields specified. |
| Format as Currency | Formats a number as currency as specified by locale. |
Parsers
| Directive | Description |
|---|---|
| JSON Path | Uses a DSL (a JSON path expression) for parsing JSON records. |
| Parse as AVRO File | Parses an AVRO data file. |
| Parse as CSV | Parses an input record as comma-separated values |
| Parse as Currency | Parses a currency value that is a string representation of local currency into a number. |
| Parse as Datetime | Parses string as datetime data type with a given format. |
| Parse as Excel | Parses into a Microsoft Excel file. |
| Parse as Fixed Length | Parses as a fixed length record with specified widths. |
| Parse as HL7 | Parses Health Level 7 Version 2 (HL7 V2) messages. |
| Parse as JSON | Parses a JSON object. |
| Parse as Log | Parses access log files, such as Apache httpd and NGINX servers. |
| Parse as Simple Date | Parses date strings. |
| Parse as Timestamp | Parses column values representing unix timestamp as date. |
| Parse XML To JSON | Parses an XML document into a JSON structure. |
Row operations
| Directive | Description |
|---|---|
| Filter Rows | Filters records based on a condition. |
| Filter Row if Matched | Filters rows that match a pattern for a column. |
| Flatten | Separates the elements in a repeated field. |
| Fail on condition | Fails processing when the condition is evaluated to true. |
| Send to Error | Filters records to an error collector. |
| Send to Error and Continue Processing | Filters records to an error collector and continues processing. |
| Split to Rows | Splits based on a separator into multiple records. |
Transformations
| Directive | Description |
|---|---|
| Changing Case | Changes the case of column values to uppercase or lowercase characters. |
| Create Record | Creates a record column with nested values by copying values from source columns into a destination column. |
| Cut Character | Selects parts of a string value. |
| Set Column | Sets the column value to the result of an expression execution. |
| Find and Replace | Transforms string column values using a "sed"-like expression. |
| Quantization | Applies quantization to column values. |
| Extract Regex Groups | Extracts the data from a group of regular expressions into its own column. |
| Set Charset | Sets the encoding and then converts the data to a UTF-8 String. |
| Set Record Delim | Sets the record delimiter. |
| Split Email | Splits an email ID into an account and its domain. |
| Split URL | Splits a URL into its constituents. |
| Text Distance (Fuzzy String Match) | Measures the difference between two sequences of characters. |
| Text Metric (Fuzzy String Match) | Measures the difference between two sequences of characters. |
| URL Decode | Decodes from theapplication/x-www-form-urlencoded MIME format. |
| URL Encode | Encodes to theapplication/x-www-form-urlencoded MIME format. |
| Trimming Spaces | Functions for trimming white spaces around string data. |
Transient aggregators and setters
| Directive | Description |
|---|---|
| Increment Variable | Increments a transient variable with a record of processing. |
| Set Variable | Sets a transient variable with a record of processing. |
Unique ID
| Directive | Description |
|---|---|
| Generate UUID | Generates a universally unique identifier (UUID). |
What's next
- Learn more aboutWrangler functions.
Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-12-15 UTC.