xdg-open: 複数のタブを同時に開く

xdg-open: 複数のタブを同時に開く

xdg-openデフォルトのブラウザである Firefox を使用して、同時にさまざまなタブを開こうとしています。

次の行は機能します (1 つのタブの場合)。

xdg-open https://stackoverflow.com

しかし、これはそうではありません:

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

発生するエラーは次のとおりです:

xdg-open: 予期しない引数 'https://google.fr'

色々なURLを渡す方法はありませんかxdg-open?よろしくお願いします!

答え1

xdg-openこれは単独では不可能です。その通り引数は 1 つです。ただし、指定されたすべての引数を反復処理して個別に呼び出す関数を記述できます xdg-open

~/.bashrcファイルをエディタで開きます。例:

gedit ~/.bashrc

そして、ファイルの最後に次のテキストを追加します。

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

ファイルを保存してエディタを終了します。その後、ターミナルウィンドウを閉じて再度開くか、次のように入力します。

source ~/.bashrc

変更を有効にするには、現在のウィンドウで変更内容を確認してください。これからは、新しい指示 xo発行できる

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

参照私の答え少し関連する質問 複数の行を短縮または結合する&> /dev/null &

答え2

ファイル/URL(複数)を開き、新しいアプリケーションをターミナルに公開するシンプルなオープン関数

#!/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
}

関連情報