Raketenwilli: Ja. Aber ...

Beitrag lesen

Hallo Raketenwilli,

noch billiger und schneller wäre vermutlich

  $backupoption = <<<END
     | grep -vP "^USE \`$backup_db\`;$"';
    END;

Das ist ein heredoc String, da kann man " und ' nach Herzenslust und ohne Escaping hineindonnern. Und Variablen auch noch.

Ja. Aber …

Wenn man jetzt auf die Idee kommt, dass $backup_db oder eine andere Variable mit einer Funktion „escape_fuzzi“ behandelt werden müsse, sieht der Zusammenbau dann mit der von mir vorgestellten Methode so aus:

Der Änderungskandidat

$backupoption = ' | grep -vP '
              . '"^USE \`'
              . $backup_db
              . '\`;$"'
;

wird ganz einfach eben mal zu:

$backupoption = ' | grep -vP '
              . '"^USE \`'
              . escape_fuzzi( $backup_db )
              . '\`;$"'
;

… und auf Performance kommt es vorliegend sehr viel weniger an als auf schnelle Editierbarkeit - also Synapsenschonung und, damit verbunden, Programmierfehlerverknappung.

„Perfektioniert“ wäre es:

$backupoption = ' | grep -vP '
                . escapeshellarg(
                    '^USE \`'
                    . $backup_db
                    . '\`;$'
                 )   
;

Resultat mit $backup_db='db0815'; ist:

 | grep -vP '^USE \`db0815\`;$'

Wobei das escapeshellarg() im konkreten, speziellen Fall als „notlos“ erscheint.

0 44

Datenbank aus Shellscript-Sicherung wiederherstellen

Jörg
  • bash-script
  • datensicherung
  • php
  1. 0
    Raketenwilli
    1. 0
      Jörg
      1. 0
        Raketenwilli
        1. 0
          Jörg
          1. 0
            Raketenwilli
            1. 0
              Jörg
              1. 0
                Raketenwilli
                1. 0
                  Jörg
                2. 0

                  Datenbank aus Shellscript-Sicherung wiederherstellen: Fehler gefunden?

                  Jörg
                  1. 0
                    Jörg
                    1. 0
                      Raketenwilli
                      1. 0
                        Jörg
                        1. 0
                          Jörg
                          1. 0
                            Raketenwilli
                        2. 0
                          Raketenwilli
                          1. 0
                            Jörg
                            1. 0
                              Raketenwilli
                              1. 0
                                Jörg
                                1. 0
                                  Raketenwilli
                                  1. 0
                                    Jörg
                  2. 0
                    Raketenwilli
                    1. 0
                      Jörg
                      1. 0
                        Raketenwilli
                        1. 0
                          Jörg
                          1. 0
                            Raketenwilli
                            1. 0
                              Jörg
                              1. 0
                                Raketenwilli
                                1. 0
                                  Jörg
                                  1. 0
                                    Raketenwilli
                                    1. 0
                                      Jörg
                                      1. 0
                                        Raketenwilli
                                        1. 0
                                          Jörg
                                          1. 0
                                            Der Martin
                                          2. 0

                                            Kastensatz des Programmierers

                                            Raketenwilli
                                            1. 0
                                              Jörg
                                              1. 0
                                                Raketenwilli
                                    2. 0
                                      Rolf B
                                      1. 0

                                        Ja. Aber ...

                                        Raketenwilli
                                        1. 0
                                          Rolf B
                                          1. 0
                                            Raketenwilli
                                        2. 0

                                          Fortsetzung

                                          Raketenwilli
  2. 0
    Der Martin
    • datensicherung
    • meinung
    • programmiertechnik
    1. 0
      Jörg