Изменение передачи параметра в скрипт (Bash)

Я давно искал в Google и не могу найти ничего, что соответствовало бы тому, что мне нужно / хочу сделать.

Моя цель - написать сценарий, который берет два аргумента. Он будет искать по первому аргументу (который является списком) и определять, есть ли в нем второй аргумент. Например:

list = / bin / foo: / bin / random: random

для добавления в список: / bin / foobar

Вызов скрипта выдаст результат / bin / foo: / bin / random: random: / bin / foobar.

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

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

...
if [ $RUN = 1 ]; then
    echo $1
else
    $1="$NEWLIST"
fi
exit 0

Однако это привело к ошибке. Он говорит, что команда не найдена, и дает мне номер строки, в которой находится $ 1 = "$ NEWLIST". Что я здесь делаю не так? Как мне изменить $ 1? Спасибо!

edit:

$ PATH=/opt/bin:$PATH
$ ./scrip.sh PATH /user/opt/bin
$ /opt/bin:/user/opt/bin

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

7
задан AstroCB 24 August 2014 в 03:42
поделиться