Y a-t-il un caractère générique dans bash pour correspondre exactement à 5 caractères, raccourcissant un motif comme ?????
8
Y a-t-il un caractère générique dans bash pour correspondre exactement à 5 caractères, raccourcissant un motif comme ?????
Pas encore.
Avec l' extglob
option, bash
ajoute certains des ksh
opérateurs de globalisation étendus mais pas {x,y}(pattern)
celui.
Dans ksh93
, vous utilisez:
{5}(?)
Avec zsh
avec l' extendedglob
option:
?(#c5)
(vous remarquerez qu'aucun d'eux n'est plus court que ?????
si).
Dans bash
, vous pourriez faire:
$(printf '%.0s?' {1..5})
bien que ce ne soit guère une amélioration et repose sur le fait de $IFS
ne pas contenir ?
.
bash
(celui-ci fonctionnerait également avec ksh93 ou zsh dans l'émulation sh / ksh). Avecbash
, vous pouvez utiliser à la$(seq "$n" | tr -cd '\n' | tr '\n' '?')
place.$(yes '?' | tr -cd '?' | head -c $n)
- c'est amusant. De plus, ne pourriez-vous pas supprimer la dépendance $ IFS en la mettant entre "guillemets"?split+glob
opérateur (en laissant une expansion sans guillemets) mais uniquement laglob
partie (vous voulez que ce?????
modèle soit développé, ce qui ne se produirait pas) si vous avez cité$(...)
). Notez que vous utilisez cetsplit+glob
opérateur avec vos guillemets,$n
ce qui ajoute une autre exigence qui$IFS
ne doit pas contenir de chiffres. Celui que vous pouvez et devez citer.