Как создать и обработать строку в оболочке FreeBSD Bourne?

Сам по себе немного слишком сложный, но с соблюдением формата, предоставленного большинством других, но без вызова IFS, который я бы использовал.

pairs=( "name1,url1" "name2,url2" "name3,url3" )

for pair in "${pairs[@]}"; do
    #Create an array in itself, of the two values.
    tmpArr=(`echo $pair | tr ',' ' '`)

    #Then either use Array Indexing on the array ie. 
    #Or place the offsets in their own variables. ie Run=${tmpArr[0] ...;
    command ${tmpArr[0]} ${tmpArr[1]}
done

Устраняет необходимость во временных файлах, никакой реальной очистки не требуется, если они используются внутри сценарий, который изначально использует Sha-Bang или делает его локальным в функции, как я и делал большую часть своих сценариев, сохраняя синтаксис как можно ближе к "C". Я также придерживаюсь моего девиза bash: «Если вы хотите это сделать, значит, кто-то уже делал это раньше и сделал модуль, так что не выполняйте эту работу заново ...»

2
05.09.2017, 00:01
1 ответ

Ваш второй вопрос неоднозначен. Вопрос 1 прямолинейный. При этом будут получены соответствующие идентификаторы процессов:

PIDS=`vm list | grep ' Running ' | sed -e 's;.* Running ;;' | tr -d '()'`
echo $PIDS
for PID in $PIDS; do ps wwup $PID; done
0
27.01.2020, 22:36

Теги

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