Linux & Shell

Échappement shelldes arguments bien délimités

Choisissez le shell et saisissez les valeurs brutes. Ajoutez séparément le programme pour obtenir un aperçu de l’appel.

Échappement shell

Valeurs brutes des arguments

Arguments cités / aperçu de commande

Traitement dans ce navigateur, sans exécution de commande ni envoi des valeurs.

Options de citation

Saisissez un seul nom ou chemin sans options ; laissez vide pour les arguments seuls.

Le tableau accepte des chaînes, conserve les valeurs vides et les sauts de ligne internes.

Limite : 65 536 caractères pour entrée et commande ; 1 000 arguments.

Une seule couche de shell. CMD, commandes imbriquées et analyse native Windows sont hors périmètre.

1 arguments générés. L’aperçu n’a pas été exécuté.

Échappement shell : un chemin avec des espaces ou un nom contenant une apostrophe ne doit pas devenir plusieurs arguments. Les caractères spéciaux qui semblaient ordinaires dans un formulaire peuvent prendre un autre sens dans le terminal.

Le mode individuel traite tout le texte comme une valeur. Pour plusieurs arguments, un tableau de chaînes JSON fixe les limites, y compris celles d’une chaîne vide ou d’un texte contenant un saut de ligne.

Pourquoi utiliser Échappement shell ?

Une valeur vide reste à sa place

Échappement shell conserve deux arguments pour ["", "two words"]. Le premier est vide, tandis que l’espace du second appartient à la valeur. Aucun nettoyage des espaces, tri ou dédoublonnage ne modifie la liste.

Trois cartes de valeurs, dont une vide, gardent leur ordre et leurs cadres distincts.

Adapter la syntaxe au destinataire

POSIX ferme les guillemets simples avant d’insérer une apostrophe littérale, puis les rouvre. PowerShell double le caractère. Le changement de cible réécrit la sortie sans toucher aux valeurs saisies ni aux apostrophes typographiques.

Une carte d’entrée se divise vers deux structures de citation différentes.

Définir les limites avant les guillemets

01

Distinguer vide et absent

[] signifie zéro argument, [""] un argument vide. En mode individuel, une entrée vide peut être citée manuellement. Effacer annule les tâches en attente et remet le résultat à zéro.

  • Dans une chaîne JSON, \n représente un saut de ligne à l’intérieur du même argument.
02

Séparer le programme des options

Le champ commande contient un seul nom ou chemin d’exécutable. Placez les options dans le tableau d’arguments. Pour PowerShell, l’opérateur d’appel & est ajouté devant le chemin cité.

  • Les espaces du champ commande restent dans le chemin, sans créer d’options.
03

Vérifier le nombre et la fraîcheur

Le mode automatique attend 350 ms après la dernière modification. Désactivez-le pour afficher le bouton, ou utilisez Ctrl/Cmd + Entrée. Dès qu’une valeur change, les anciens résultats ne peuvent plus être exportés.

  • Le remplacement par un exemple et l’effacement ont un aperçu ; annuler restaure entrée et sortie.

Des valeurs littérales, prêtes à relire

Arguments POSIX et Bash

Chaque argument est entouré de guillemets simples. Dollars, jokers, points-virgules et accents graves restent littéraux. Un texte ressemblant à une substitution de commande n’est pas transformé en instruction à exécuter.

Chaînes PowerShell

Les apostrophes ASCII et les caractères U+2018 à U+201B sont doublés séparément. Les barres obliques inverses sont conservées. Un chemin Windows brut convient au mode individuel ; le mode tableau suit la syntaxe JSON.

Aperçu et export complets

Les valeurs citées séparément sont jointes par des espaces et comptées. Le programme facultatif complète l’appel. La copie et le fichier TXT reprennent toute la sortie ; un tableau vide sans programme ne produit aucun texte.

Ce que les guillemets ne garantissent pas

Une seule couche de shell
Pas de syntaxe CMD, batch, fish, .env ou SSH imbriqué. La sortie PowerShell représente la couche du langage ; Windows PowerShell 5.1, le mode Legacy et les programmes natifs peuvent réinterpréter les arguments.
Uniquement des valeurs brutes
Aucune analyse de commande complète, suppression des guillemets, expansion de variable, import de fichier ou d’URL. Le tableau produit une suite d’arguments, pas une déclaration de variable tableau Bash.
Pas de validation des actions
L’aperçu n’est jamais exécuté et l’existence du programme n’est pas vérifiée. Une valeur comme --delete peut rester une option. Le séparateur -- n’est pas ajouté automatiquement : cela dépend du programme appelé.
Limites de taille et de type
Le texte et la commande sont limités ensemble à 65 536 unités UTF-16 et le tableau à 1 000 chaînes. Nombres, booléens, null, objets et tableaux imbriqués sont refusés, sans conversion implicite.
Pas de perte silencieuse
NUL et les substituts Unicode isolés sont refusés. Espaces, tabulations et sauts de ligne sont conservés, donc la sortie peut occuper plusieurs lignes. Une erreur d’élément indique son début et son numéro.

Questions sur Échappement shell

Comment échapper une apostrophe dans une chaîne Bash entre apostrophes ?

En POSIX, il faut fermer les guillemets simples, insérer l’apostrophe échappée à l’extérieur, puis reprendre la citation. O'Brien devient 'O'\''Brien'. L’option POSIX applique cette règle à chaque occurrence.

Quelle différence entre guillemets simples et doubles dans Bash ?

Les guillemets simples conservent la valeur littérale. Les doubles permettent encore $HOME et $(...). Cette page produit volontairement une citation littérale ; les expansions souhaitées doivent être écrites dans le script lui-même.

Comment passer des arguments contenant des espaces ?

Citez chaque argument séparément, jamais toute la ligne de commande en bloc. Pour deux valeurs avec des espaces, saisissez deux chaînes JSON dans le mode tableau et vérifiez que le compteur indique deux arguments.

Pourquoi la séparation d’une chaîne fait-elle perdre les valeurs vides ?

Une séparation sur les espaces ou un délimiteur peut perdre les champs vides. ["a", "", "b"] conserve ici trois arguments. [] n’en contient aucun ; [""] en contient un, vide.

Peut-on mettre une apostrophe dans une chaîne PowerShell ?

Oui. PowerShell double l’apostrophe interne, par exemple 'don''t'. Les apostrophes typographiques reconnues par son analyseur sont également doublées. Cela ne remplace pas les règles de CMD ni le traitement des programmes natifs.

Un résultat inattendu ?

Relire les valeurs avant l’appel

Échappement shell vous aide à préparer la syntaxe du shell réellement utilisé. Vérifiez le nombre d’arguments puis copiez le résultat à jour.