Каталог, о котором запрашивает Дурак, является каталогом по умолчанию, содержащим почтовые ящики. (Это не самостоятельно почтовый ящик.) Это - каталог, который сократил как +
в начале почтового ящика соединяют каналом в Дураке. Вы не можете полностью отключить опцию (Дурак хочет +
для значения чего-то) но можно изменить местоположение к чему-то, что существует как /
или Ваш корневой каталог путем установки folder
опция.
set folder=~
элемент
- это скалярная строковая переменная (не массив), поэтому вы должны сказать
item_arr=($item)
, а не
item_arr=($item[@])
, если $ item
Быстрая коричневая лиса
, то
item_arr=($item[@])
становится
item_arr=(The quick brown fox[@])
Вы Правильно, что awk будет проще.
Пример источника /tmp/test2.txt:
$ cat /tmp/test2.txt
192.168.1.152 pwd username https
$ awk '{print $4 "://" $1 ":" $3 "@" $2 "/control/configinfo" }' /tmp/test2.txt
https://192.168.1.152:username@pwd/control/configinfo
Если вы хотите более простой способ сделать это в чистом Bash
,
Предполагая, что вам не нужно держать содержимое файла
(IP-адреса, имена пользователей, пароли и т. Д.)
В памяти оболочки (то есть в массиве),
Вы можете сделать это:
while read ip_address pwd username protocol
do
echo "${protocol}://${ip_address}:$username@$pwd/control/configinfo"
done < test_file1.txt
Это может быть легче поддерживать, чем решение awk
.