명령 대체가 개행을 추가합니까?

명령 대체가 개행을 추가합니까?

Android 장치에서 장치 스키마를 쿼리하고 경로의 스크립트를 사용하여 장치에 파일을 푸시하는 스크립트가 있습니다.

코드는 다음과 유사합니다.

ARCH=$(adb shell getprop ro.product.cpu.abi)
adb push libs/"$ARCH"/binary /data/local/tmp/binary

그러나 도로가 손상되었습니다. getprop명령을 파일로 전송할 때 문제의 원인일 수 있는 개행 문자가 반환되는 것을 볼 수 있습니다. 나는 명령 대체가 개행 문자를 제거할 것이라는 인상을 받았지만 어쨌든 다음을 시도했습니다.

 ARCH=$(adb shell getprop ro.product.cpu.abi | tr -d '\n')

아직도 운이 없습니다.

어떤 아이디어/

답변1

adbDOS 라인으로 끝나는 명령을 출력합니다. 명령 대체는 개행 문자를 제거하지만 캐리지 리턴을 제거하지 않으므로 수동으로 제거해야 합니다.

ARCH=$(adb shell getprop ro.product.cpu.abi)
ARCH=${ARCH%$'\r'}
adb push libs/"$ARCH"/binary /data/local/tmp/binary

관련 정보