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.

  • Sto ottenendo DDoSed e cosa devo fare?
  • Come risolvere le chiamate high CPU + eccessive stat ("/ etc / localtime") e clock_gettime (CLOCK_REALTIME)
  • Problemi di avvio del servizio systemd (Jessie)
  • Problemi di temporizzazione con mounts OpenVPN e NFS (Debian Squeeze)
  • DHCP-Server - informi i clienti per rinnovare il contratto di locazione
  • Comando Unix per timestamp l'output di un file, ma con il tempo relativo all'avvio?
  • 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.