У меня есть такой вывод:
$ ./adb devices
List of devices attached
R9WM80DNNPJ device
(в конечном итоге это вернет несколько строк устройств, таких как:
List of devices attached
R9WM80DNNPJ device
R9WM80DNNPA device
R9WM80DNNPB device
R9WM80DNNPC device
)
, и я пытаюсь получить имя устройства, чтобы передать его нескольким другим командам. Попытка в конечном итоге добраться до скрипта, который выглядит следующим образом (он будет делать больше, чем эхо c):
adb devices | more +1 | cut -sf 1 | xargs -I % sh -c '{ ^
echo % ; ^
echo "Test %"; ^
}'
Когда я помещаю команду все в одну строку, у терминала cygwin нет проблем с эхом 'it it out:
Когда я перемещаю эту команду в файл, она перестает работать правильно (вывод первой строки - это печать команда используется, но затем она не выполняет первое эхо):
И выполнение многострочной команды также не работает:
My угадайте, я делаю что-то не так с символами новой строки? или это как-то связано с sh -c
? или оба!