Comillas argumento shell
hello world se convierte en 'hello world', un único argumento seguro para la shell: espacios, comillas, asteriscos y otros signos especiales quedan entre comillas simples para que la shell los entregue como datos. La opción inversa recupera el texto. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Texto
- hello world
- Modo de cálculo
- Encode
- Resultado
- 'hello world'
- Codificación
- posix_shell
- Longitud de entrada
- 11
- Longitud de salida
- 13
Este comillador de argumentos shell convierte texto plano en una forma segura para pegarla como un solo argumento POSIX, y revierte el mismo mapeo cuando usted necesita recuperar la cadena original desde la sintaxis entrecomillada. La codificación sigue la convención de comillas simples usada por herramientas como shlex.quote: la entrada vacía se convierte en un par de comillas simples vacías, los tokens formados solo por letras, dígitos y un conjunto reducido de puntuación segura permanecen sin comillas, y todo lo demás se envuelve en comillas simples con cada apóstrofe interno reescrito como cierre, comilla escapada y reapertura para que el shell nunca vea una cadena abierta. La decodificación recorre una palabra de argv con comillas simples, comillas dobles con el conjunto limitado de escapes POSIX y barras invertidas sin comillas, y falla de forma clara ante comillas sin cerrar, una barra final o espacios en blanco sin comillas, de modo que un fragmento de comando a medias no se convierta en silencio en la ruta equivocada. El camino es plenamente determinista: el mismo texto y modo producen siempre el mismo resultado, sin llamadas de red, sales aleatorias ni atajos dependientes de la fecha. Las comprobaciones básicas incluyen entrecomillar una ruta con espacios, insertar un apóstrofe dentro de una palabra citada y rechazar un fragmento entre comillas dobles que no cierra.
Qué es el comillado shell POSIX y qué devuelve esta herramienta
Un shell POSIX divide la línea de comandos en palabras y aplica reglas de comillado antes de que un programa vea argv. Espacios, tabuladores y saltos de línea separan palabras salvo que estén entre comillas. Las comillas simples dejan pasar cada carácter de forma literal hasta la siguiente comilla simple; por eso la receta clásica segura es envolver toda la cadena y empalmar cada apóstrofe interno como un corte de cuatro caracteres que cierra la comilla, emite un apóstrofe literal y la reabre.
Las comillas dobles permiten un conjunto menor de escapes para dólar, acento grave, comilla doble, barra invertida y salto de línea, útil al leer fragmentos heredados, pero no es la ruta preferida de codificación en esta página. Metacaracteres como asterisco, interrogación, tubería, ampersand, punto y coma y operadores de redirección cambian la gramática del shell cuando aparecen sin comillas; envolverlos en comillas simples los convierte en datos ordinarios para el programa receptor.
Esta landing implementa ese conjunto en codificación y un reverso cuidadoso en decodificación: la respuesta es un solo argumento, sin expandir variables, ejecutar globs ni dividir un pipeline completo en muchas palabras.
Qué puede hacer con ella
Rutas seguras en fragmentos shell
Entrecomille rutas de archivo y valores con espacios, comillas o metacaracteres antes de pegarlos en scripts shell POSIX, comandos remotos ssh o líneas docker run.
CI y pruebas de contrato
Genere pares deterministas de comillado y descomillado para que los pipelines afirmen la misma forma segura POSIX entre lenguajes y versiones.
Preguntas frecuentes
¿Cómo entrecomillo una cadena para un argumento shell POSIX?
Envíe la cadena plana en text con mode encode (el predeterminado). La entrada vacía se convierte en '', los tokens desnudos seguros permanecen sin comillas y todo lo demás va entre comillas simples con '\'' por cada apóstrofe.
¿Cómo quito el comillado de un argumento shell?
Envíe la palabra entrecomillada en text con mode decode.
¿Ejecuta esto comandos shell?
No. Solo transforma texto para un uso seguro de argv. No lanza un shell, no expande variables ni globs, ni divide una línea de comando completa en varias palabras.
¿Qué pasa con un apóstrofo dentro del texto?
Dentro de comillas simples un apóstrofo no se puede escapar, así que la herramienta cierra la comilla, añade un apóstrofo escapado con barra invertida y vuelve a abrirla. Esos cuatro caracteres, '\'', mantienen el argumento entero.
¿Por qué algunas palabras quedan sin comillas?
Porque no necesitan protección. Una palabra hecha solo de letras, dígitos y unos pocos signos seguros, como el punto, la barra, el guion o los dos puntos, se entrega tal cual; cualquier otro carácter obliga a envolverla en comillas simples.
Herramientas relacionadas
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/enc/shell-escape \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"hello world"}'const res = await fetch("https://api.kit.forhosting.com/enc/shell-escape", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "hello world"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/shell-escape",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "hello world"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/shell-escape", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"hello world"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"hello world"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/shell-escape", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"text": "hello world"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.shell_escape",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
Qué es el comillado shell POSIX y qué devuelve esta herramienta
La respuesta JSON siempre incluye result para la cadena transformada, mode que repite encode o decode, encoding fijo a posix_shell, e input_length y output_length para que las pruebas puedan afirmar tamaños. Encode también informa needs_quotes y apostrophes_escaped; decode informa quote_segments para confirmar cuántas regiones citadas se consumieron. No hay omisión silenciosa parcial ante una comilla rota: o la palabra es comillado shell bien formado o la solicitud falla con invalid_input.
Cómo se leen text y mode y cómo se mantienen resultados reproducibles
Encode clasifica la cadena: vacía se convierte en un par de comillas simples vacías; un token que coincide con el conjunto seguro desnudo de letras, dígitos y arroba porcentaje más igual dos puntos coma punto barra baja guion se devuelve sin cambios porque no necesita protección; cualquier otro carácter, incluidos espacio, comilla o metacaracter shell, fuerza un envoltorio completo en comillas simples con el empalme de apóstrofe por cada comilla simple interna. Como el envoltorio se aplica en un solo paso de izquierda a derecha, obtiene una forma de comillado consistente alineada con el espíritu de shlex.quote y ayudas shell habituales. Decode examina segmentos entre comillas simples, segmentos entre comillas dobles con el conjunto limitado de escapes POSIX y escapes de barra invertida sin comillas que protegen el siguiente carácter o continúan una línea cuando el siguiente es un salto de línea. El campo preferido del payload es text, con alias input, value, s, payload y arg para que formularios, cadenas de consulta y clientes SDK reutilicen el mismo contrato sin renombrar columnas. Mode por defecto es encode y acepta decode de forma explícita; los alias op, direction y action mapean al mismo interruptor para scripts que ya usan esos nombres, y quote o unquote se aceptan como sinónimos. Una barra invertida final incompleta, una comilla simple o doble sin cerrar, o espacios en blanco sin comillas que iniciarían una segunda palabra de argv elevan invalid_input con un mensaje que nombra el problema. El techo de longitud de cien mil caracteres mantiene predecible la memoria del Worker y sigue cubriendo rutas largas, valores de entorno y la mayoría de portapapeles. Combine la ejecución gratuita en el navegador de esta página con la API de pago cuando necesite el mapeo idéntico dentro de un pipeline automatizado sin reimplementar tablas de comillado shell. Las entradas inválidas devuelven invalid_input y no se cobran, lo que mantiene barata la validación mientras las transformaciones exitosas siguen un precio fijo por ítem a $0.002.
Dónde encaja el comillado de argumentos shell en flujos de desarrollo
Los desarrolladores se encuentran con el comillado de argumentos shell al construir comandos remotos, escribir fragmentos de instalación, ensamblar listas de argumentos docker o ssh, o guardar rutas de archivo que pueden contener espacios y apóstrofes. Los equipos frontend y backend codifican nombres de archivo suministrados por el usuario antes de insertarlos en una plantilla shell para que un solo espacio o comilla no rompa el comando circundante ni inyecte tokens extra. Los ingenieros de calidad generan pares deterministas de encode y decode para pruebas de contrato, de modo que un middleware que afirma comillado seguro no pueda cambiar en silencio a una tabla no POSIX entre versiones. Los educadores usan la misma herramienta al enseñar la diferencia entre comillas simples, comillas dobles, escapes de barra invertida y por qué los argumentos vacíos deben seguir apareciendo como un par de comillas en lugar de desaparecer. Los revisores de seguridad usan comprobaciones de comillas como higiene antes de pegar valores en scripts shell, recordando que comillar no sustituye evitar el shell cuando hay una API de array argv directa. En esta página el trabajo corre por completo en su navegador; a través de la API cada consulta exitosa cuesta $0.002, la validación fallida no se cobra y no se almacena nada tras devolver la respuesta. Esa división —exploración interactiva gratuita y una API de pago idéntica— encaja con el resto del catálogo KIT de nivel A y le permite pasar de una demo de aula a un pipeline automatizado sin cambiar el resultado entrecomillado. Combínelo con escape de cadenas JSON o codificación porcentual de URL cuando necesite transformaciones de texto más amplias, y con otros endpoints de codificación al armar un laboratorio de herramientas gratuitas y deterministas para CI y documentación.
Casos de integración
Limpieza de fixtures y registros
Quite el comillado de fragmentos shell en registros, runbooks o ficheros dorados para recuperar Unicode plano en diffs legibles y código de aplicación.
Preguntas técnicas
¿Qué se considera comillado mal formado?
Comillas simples o dobles sin cerrar, una barra invertida final al final de la entrada y espacios en blanco sin comillas (que iniciarían una segunda palabra argv) fallan con invalid_input y no se facturan.
¿Cuánto cuesta el comillador de argumentos shell?
La herramienta del navegador es gratuita. Las solicitudes API usan saldo KIT prepago a $0.002 por llamada exitosa; la entrada inválida no se factura.