как удалить символы из переменных для удаления --function option1 option2

При разделении строк, подобных этой, довольно распространенной практикой является указание на то, что линия была разделена (и предназначена для просмотра/использования/чтения в виде одной строки), либо путем разметки конца строки символом \, либо началом разделенных строк некоторыми белыми пространствами (например, 2 символами пробела), либо тем и другим.

Следующий скрипт sed делает оба и гарантирует, что каждая строка может быть шириной не более 79 символов (поэтому подходит для отображения на 80-столбцовом терминале или принтере).

sed -r 's/(.{75})/\1 \\\n  /g' geneseq.txt

Это не только делает визуально понятнее, какие линии предполагается соединить, но и облегчает повторное использование выходных данных, если требуется обработать их позже.

-121--289384-

Необходимо сделать файл исполняемым.

chmod +x VBoxLinuxAdditions.run

0
22.02.2018, 09:41
1 ответ

Encontré una solución a mi problema probando los siguientes 3 argumentos si contenían --en ellos. Y como en este caso estaba buscando IP y máscara, agregué una segunda prueba para eso. Entonces, el primero ifvalida que los siguientes argumentos no son funciones en el script y luego el segundo ifvalida los argumentos que quiero pasar a la función.

    --config-network)
        if [[ $2 != *--* && $3 != *--* && $4 != *--* ]]; then
            if [[ $2 =~ ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$ && $3 =~ ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$ && $4 =~ ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
                Config_Network $2 $3 $4
            else
                Config_Network
            fi
        else
            echo "Bad [argument] $1 $2 $3 $4"
            Display_Help
            exit
        fi
        ;;
0
28.01.2020, 04:30

Теги

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