コマンド置換は改行を追加しますか?

コマンド置換は改行を追加しますか?

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

おすすめ記事