Virgolette argomento shell
Questo strumento di virgolettatura per argomenti shell converte testo semplice in una forma sicura da incollare come un singolo argomento POSIX, e inverte la stessa mappatura quando Lei deve recuperare la stringa originale dalla sintassi virgolettata.
Esegui gratis nel browser
La codifica segue la convenzione delle virgolette singole usata da strumenti come shlex.quote: l'ingresso vuoto diventa una coppia di virgolette singole vuote, i token fatti solo di lettere, cifre e un piccolo insieme di punteggiatura sicura restano nudi, e tutto il resto viene avvolto in virgolette singole con ogni apostrofo interno riscritto come chiusura, virgoletta escape e riapertura affinché la shell non veda mai una stringa aperta. La decodifica percorre una parola argv attraverso virgolette singole, virgolette doppie con l'insieme limitato di escape POSIX e barre rovesciate non virgolettate, e fallisce in modo chiaro su virgolette non terminate, una barra finale o spazi bianchi non virgolettati, così un frammento di comando a metà copiato non diventa silenziosamente il percorso sbagliato. Il percorso è pienamente deterministico: lo stesso testo e la stessa modalità producono sempre lo stesso risultato, senza chiamate di rete, sali casuali né scorciatoie dipendenti dalla data. I controlli di base includono virgolettare un percorso con spazi, inserire un apostrofo dentro una parola citata e rifiutare un frammento tra virgolette doppie che non si chiude mai. Lo usi gratis nel browser per l'igiene degli script e la pulizia dei fixture, oppure chiami l'API a $0.002 per richiesta riuscita quando le pipeline necessitano di virgolettatura shell riproducibile in CI e servizi backend.
Come si usa
Inserisci i dati nel modulo qui sopra. Lo strumento li controlla prima del calcolo e mostra il risultato nella stessa pagina.
Controlla i dati
Segui le etichette e le unità indicate per ogni campo. Se manca qualcosa o un valore non è ammesso, la pagina indica cosa correggere.
Ripeti il calcolo o automatizzalo
Usa lo strumento web per controlli singoli e l’API quando vuoi integrare la stessa capacità in un flusso automatizzato.
Casi d'uso
Ottieni subito una risposta
Inserisci una serie di valori e visualizza il risultato senza preparare un foglio di calcolo o uno script.
Confronta gli scenari
Modifica un valore alla volta e ripeti il calcolo per capire cosa cambia il risultato.
Automatizza le attività ripetute
Usa l’API quando lo stesso calcolo deve essere eseguito nel tuo prodotto o flusso.
Domande frequenti
Come si usa questa capacità?
Compila i campi qui sopra ed eseguila in questa pagina. Il modulo segnala i dati da correggere.
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo 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)Esempio di richiesta
{
"text": "hello world"
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.shell_escape",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |