Я бы удалил то, что нужно удалить с помощьюsed
перед загрузкой в массив (также обратите внимание на имена переменных в нижнем регистре, вообще лучше избегать использования переменных с заглавной буквы в сценариях оболочки):
#!/bin/bash
readarray -t array< <(sed 's/"//g; s/ *//g; s/,/"/; s/,//g; s/"/,/' "$1")
for element in "${array[@]}";do
echo "|ELEMENT|$element|"
done
Это приводит к следующему результату в файле примера:
$ foo.sh file
|ELEMENT|10,this|
|ELEMENT|20,is|
|ELEMENT|30,all|
|ELEMENT|40,I|
|ELEMENT|50,need2|
|ELEMENT|60,see|
Если вам действительно необходимо использовать подстановку параметров, попробуйте что-то вроде этого:
#!/bin/bash
readarray -t array< "$1"
array=( "${array[@]// /}" )
array=( "${array[@]//\"/}" )
array=( "${array[@]/,/\"}" )
array=( "${array[@]//,/}" )
array=( "${array[@]/\"/,}" )
for element in "${array[@]}"; do
echo "|ELEMENT|$element|"
done
Не напрямую. Arch (и любые дистрибутивы на его основе )не зависят от формата RPM
[ 1 ] , который на самом деле разработан и используется производными от Red Hat.
Есть несколько случаев (, например. этот [ 2 ] ), в котором пакет RPM используется для установки приложения на Arch (и производных систем ), но перед этим RPM извлекается и обработано / преобразовано в аромат Arch.
Он находится в хранилище AUR. Загрузите пакет Arch Linux yay
, затем не как root , используйте yay
вместо pacman
и запустите
yay google-chrome
затем введите «1», когда появится эта опция, и она будет у вас. Я только что установил его на этой неделе на Arch.