xdg-open: Mehrere Tabs gleichzeitig öffnen

xdg-open: Mehrere Tabs gleichzeitig öffnen

Ich versuche, mehrere Tabs gleichzeitig zu öffnen, wobei xdg-openmein Standardbrowser Firefox ist.

Die folgende Zeile funktioniert (für eine Registerkarte):

xdg-open https://stackoverflow.com

Aber das hier ist nicht der Fall:

xdg-open https://stackoverflow.com https://google.fr

der ausgegebene Fehler ist:

xdg-open: unerwartetes Argument 'https://google.fr'

Gibt es keine Möglichkeit, verschiedene URLs weiterzugeben xdg-open? Vielen Dank im Voraus!

Antwort1

Dies ist nicht möglich mit xdg-openallein, weil es erwartetgenauein Argument. Sie können jedoch eine Funktion schreiben, die über alle angegebenen Argumente iteriert und diese xdg-openseparat aufruft.

Öffnen Sie die ~/.bashrcDatei in einem Editor, z. B.

gedit ~/.bashrc

und fügen Sie dann am Ende der Datei den folgenden Text hinzu:

xo () 
{ 
    for var in "$@"; do
        xdg-open "$var";
    done
}

Speichern Sie die Datei und verlassen Sie den Editor. Schließen Sie danach entweder das Terminalfenster und öffnen Sie es erneut oder geben Sie ein

source ~/.bashrc

im aktuellen Fenster, damit die Änderung wirksam wird. Ab sofort haben Sie ein neuesBefehl xound kann ausgeben

xo https://stackoverflow.com https://google.fr

Siehe auchmeine Antwortzur etwas verwandten Frage Kürzen oder verbinden Sie mehrere Zeilen von&> /dev/null &.

Antwort2

Eine einfache Öffnungsfunktion zum Öffnen von Datei/URL (mehrere) und der neuen Anwendung zum Terminal

#!/bin/bash
function openn() {
  if [ "$#" -lt 1 ]; then
    echo "You must enter 1 or more command line arguments";
  elif [ "$#" -eq 1 ]; then
    xdg-open "$1" > /dev/null & disown;
  else
    for file in "$@"; do
      xdg-open "$file" > /dev/null & disown;
    done
  fi
}

verwandte Informationen