変数があります: pkgname=com.google.android.youtube
コマンドは
su -c "stockapp=$(pm パス$pkgname | grep base | sed 'sed 's/package://g')"
変数が二重引用符内に渡されますが、$()には渡されないことを確認しました。そこに変数をどのように渡すことができますか?
答え1
あなたのコードが理解されていません。
おそらくあなたは次のことを意味します:
stockapp=$(
PKG=$pkgname su -c 'pm path "$PKG"' |
sed '/base/!d; s/package://g'
)
つまり、asと引数を使用してログインシェルを実行し(仮想root
ログインシェルはBourneに似ています)、その環境で実行して出力を処理して、を含まないすべての行を削除し、他の行の場合は削除します。のすべての発生を確認し、その出力をシェルスクリプトの変数に割り当てます。root
-c
pm path "$PKG"
root
PKG=contents-of-pkgname
base
package:
$stockapp