Привет, так ? PRM="-eo euser" CMD="ps $PRM" echo $CMD ps -eo euser $CMD
В письме от среда, 11 марта 2020 г. 15:42:33 +07 пользователь Nikolai Kondratiev написал: > Привет всем! > > Мне нужно сформировать и выполнить в скрипте команду вида > > ccc 'xxx yyy' > > т.е команду с одним аргументом, в котором есть пробел. > > Следующий скрипт: > > set -x > PRM="xxx yyy" > CMD="ccc $PRM" > ccc $PRM > ccc "$PRM" > echo $CMD > $CMD > CMD="ccc '$PRM'" > $CMD > > работает только в строчке: > > ccc "$PRM" > > Последние строчки работают неправильно: > > # ./test2 > + PRM='xxx yyy' > + CMD='ccc xxx yyy' > + ccc xxx yyy > ./test2: line 5: ccc: command not found > + ccc 'xxx yyy' > ./test2: line 6: ccc: command not found > + echo ccc xxx yyy > ccc xxx yyy > + ccc xxx yyy > ./test2: line 8: ccc: command not found > + CMD='ccc '\''xxx yyy'\''' > + ccc ''\''xxx' 'yyy'\''' > ./test2: line 10: ccc: command not found > > Мне нужно достаточно сложное формирование команды. > > Есть идеи как можно сформировать переменную $CMD, чтбы строка > > $CMD > выполнила команду > ccc 'xxx yyy' > > ? > > Николай > -- Best regards Evgeny Yurkin Siberian Health Inc