У меня есть сценарий для изменения структуры из файла .txt в читаемую структуру команды newusers, что отлично подходит для 1 файла, но это означает, что мне приходится редактировать указанный сценарий каждый раз, когда мне нужно использовать его с новым файлом . Я читал о позиционных параметрах, которые, как мне кажется, мне нужны в данной ситуации, но не знаю, как их применить для достижения моей цели.
Что я могу сделать, чтобы передать аргументы при выполнении скрипта, чтобы он работает с каждым файлом без необходимости каждый раз редактировать скрипт дальше / каждый раз?
Пока мой скрипт работает со скриптом bash. sh, без аргументов.
Код на данный момент:
#!/bin/bash
clear
while IFS=: read -r userid username group; do
if [ "$group" = "group1" ]; then
groupid=2020
elif [ "$group" = "group2" ]; then
groupid=2040
else
echo "Unknown group"
fi
echo "$userid:password123::$groupid:$username:/home/$userid/bin/bash";
done #< users2.txt > newusers2.txt
Ожидаемый результат:
bash скрипт. sh oldfile1 newfile1
Ура.