xargs bash -c 'nohup google-chrome --no-sandbox $@ &' null < tabs.txt
С таким файлом тестов:
$ cat tabs.txt
https://stackoverflow.com
unix.stackexchange.com
Method2 :
, если ваш браузер chrome, а ваш скрипт openurl -
[ 112]Запустите его как
./openurl "https://stackoverflow.com"
Примечание. Замените хром браузером
Method3
xdg-settings set default-web-browser chromium-browser.desktop
или
xdg-settings set default-web-browser chromium-browser.desktop
затем
xdg-open https://stackoverflow.com
Действительно единственная причина для блоков попытки функционального уровня для конструкторов, иначе это - несколько неясная функция, которая не покупает Вас так очень. Столь же легко сделать это этот путь:
bool readEntity(...)
{
try
{
while(...)
{
if(...)
{
//lot's of code...
}
}
}
catch(XMLBaseException & ex)
{
//create our exception and throw
}
}
Если Вы испытываете затруднения из-за горизонтальной прокрутки, затем нужно должен разделить Ваш код. попытка/выгоды является сложностью, и это должно быть представлено на уровне вложенности, не скрытом.
В конструкторах это - другой вопрос: нет никакого другого способа поймать исключения в списке инициализатора:
SomeClass::SomeClass(parameter p1, parameter p2) : Member1(p1), Member2(p2)
try
{
}
catch(Exception &ex)
{
// handle and rethrow
}
Конечно, если у Вас есть исключение середина конструкции, там маловероятно очень, можно сделать для восстановления кроме журнала и и перебросок (это собирается быть повторно брошенным так или иначе в случае конструктора). Ваш объект еще не полностью создается и нет ничего, что можно действительно сделать с ним. Единственной вещью, которой можно доверять, чтобы быть допустимыми, являются параметры (хотя, если инициализация перестала работать, который, вероятно, произойдет из-за плохих параметров).
Посмотрите этот GOTW для обсуждения этого.
Только быть ясным: перебросок и переупаковочные исключения не являются плохой практикой, это - Хорошая Вещь, так как это минимизирует воздействие внешних зависимостей.
Однако выгода попытки функционального уровня предназначается для инициализации конструктора. Оставление нескольких горизонтальных свободных мест в Вашем коде не стоит использовать относительно неясную функцию языка для. Лучше для рефакторинга вложенного кода, если Вы действительно располагаете это с отступом далеко!
Та функция, как предполагается, возвращает bool, таким образом, можно возвратить TRUE или FALSE, но если бы функция должна была перестать работать, и bool использовался для чего-то другого, чем флаг успеха (который является плохой практикой, если не чистый c), то это должно бросить для передачи сигналов о вызывающей стороне, это не работало.
Существует хорошая дискуссия об общей бесполезности блоков попытки конструктора/функции в Herb Sutters сайт GotW.