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
}