BlueZ error setting privacy on Raspbian

Этот ответ для Bash.

Для этого можно использовать ловушку. Это иллюстративный пример. Чтобы продолжить цикл, используйте Ctrl+c. Однако нет никакого способа остановить скрипт, кроме как закрыть терминал или убить его из другого терминала.

#!/bin/bash

trap ps SIGINT
for i in a b c d;  do
    for j in w x y z; do
        echo ----$i$j------ && ping stackexchange.com -c 10
    done
done
exit

Ваш скрипт будет выглядеть примерно так (после некоторых моих улучшений), но обратите внимание, что он не был протестирован:

#!/bin/bash
trap '' SIGINT
for ip in $(cat ip_list); do
    mkdir $ip && cd $ip &&
    for vuln in $(snmap http);do
        nmap --script=$vuln $ip -oN $vuln
    done &&
    cd ..
done

Изменения, которые я ввел, такие как &&, предотвращают ввод логических путей, которые могут привести к ошибке. Если возможно, безопаснее накладывать такие ограничения. Когда это сформулировано так:

mkdir $ip; cd $ip;

если каталог не может быть создан, то cd приводит к ошибке.

При такой постановке вопроса:

mkdir $ip && cd $ip

если каталог по какой-то причине не был создан, то попытка cd не выполняется. Если все команды от mkdir $dir через cd $dir до cd ... соединить в цепочку с &&, то логика понятна и структура не нарушится. Если вы используете ; и не создадите каталог, то вы не сможете в него войти, но вы, возможно, не сможете не перейти к ... .

2
27.07.2017, 01:25
0 ответов

Теги

Похожие вопросы