Bash Extended Globbing fornisce errori di syntax

Può chiunque spiegare questo:

$ bash $ shopt -s extglob $ ls *.(txt|doc) bash: syntax error near unexpected token `(' $ shopt extglob extglob on 

Questa è un'installazione di compressione debian. Mi aspetto che l'extglob interpnetworkingrà le parentesi come l'inizio di un gruppo.

  • Che cos'è "python -c import pty; pty.spawn (" bash ")" facendo?
  • Come rimuovere periodicamente tutti i contenuti da un file senza eliminarla
  • Come posso esportre i privilegi da MySQL e quindi importre su un nuovo server?
  • Comodo interazione di console di timbratura data / ora, ad esempio utilizzando alias shell?
  • MySQL mantiene l'arresto: InnoDB: Imansible bloccare ./ibdata1, errore: 11
  • Gli utenti che puliscono in debian
  • Grazie,

    Paolo

    2 Solutions collect form web for “Bash Extended Globbing fornisce errori di syntax”

    Perché l'extglob non funziona in questo modo. È necessario inserire uno dei caratteri di modifica all'inizio di un elenco di templates ( (txt|doc) in questo caso), come segue (da man bash ):

      ?(pattern-list) Matches zero or one occurrence of the given patterns *(pattern-list) Matches zero or more occurrences of the given patterns +(pattern-list) Matches one or more occurrences of the given patterns @(pattern-list) Matches one of the given patterns !(pattern-list) Matches anything except one of the given patterns 

    In particolare, ls *.*(txt|doc) produce il comportmento che indovino.

    È ansible farlo senza l'estensione del globbing utilizzando l' espansione del brace : ls *.{txt,doc}

    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.