Ulangi file teks untuk nama dalam teks kemudian tarik file yang terkait dengan nama itu (nama yang sama) dari folder


1

Oke, saya tahu ini kedengarannya aneh, tetapi inilah yang saya coba lakukan.

  1. Temukan file kelas booting ponsel melalui perintah shell. File kelas boot adalah daftar APK yang diperlukan ponsel untuk melakukan operasi tertentu
  2. Menyimpan daftar itu sebagai file teks pada PC saya. File teks ini sekarang akan berisi nama .jar seperti core.jar, services.jar, sc.jar, dll.
  3. Lingkari file teks ini dan baca namanya satu per satu.
  4. Untuk setiap nama file yang ditemui pada file teks, maka akan pergi ke direktori kerangka telepon dan menyalin file aktual referensi teks. Sebagai contoh....

Jika nama pertama pada teks adalah "services.jar", maka itu akan melihat ke direktori telepon yang benar dan mencari file "services.jar" yang sebenarnya dan menyalinnya ke direktori pada PC.

Sejauh ini saya sudah 1 dan 2 berhasil. Saya juga tahu cara menarik file dari direktori yang benar di telepon, saya hanya tidak tahu cara memutus loop pada setiap iterasi untuk melakukan fungsi pencarian dan salin.

Jadi sekarang di sini adalah cara kerja BAT ....

adb shell echo $BOOTCLASSPATH > tmp.txt

Sekarang saya ingin mengulang tmp.txt itu untuk melihat nama apa yang ada di dalamnya dan menarik file dari lokasi lain berdasarkan nama yang ditemukannya. Jika core.jar ada di teks itu menarik core.jarfile yang sebenarnya dari telepon.

Jika saya menggunakan ...

SETLOCAL ENABLEDELAYEDEXPANSION
for /f "usebackqdelims=" %%a in ("temp.txt") do (
SET file!index!=%%a
"what file did i find on this iteration?
"look in directory "X" on phone and copy that file to PC
....continue loop
ECHO !index! - %%a | more
SET /A index=!index!+1
)

untuk mengulang file txt, bagaimana saya bisa berhenti di setiap iterasi untuk menarik file yang terkait dengan nama itu dari direktori yang berbeda? Jadi loop pertama melalui itu menemukan core.jar, saya kemudian ambil core.jar yang sebenarnya dari telepon. Loop kedua melalui itu menemukan services.jar pada daftar, saya kemudian ambil services.jar yang sebenarnya dari lokasi lain .... dll.

Perlu diingat sepanjang BAT ini menjalankan ponsel saya terhubung ke PC saya melalui USB, kalau tidak pasti tidak akan berfungsi dengan benar.

Saya harap saya telah menjelaskan ini dengan jelas ... sulit untuk dijelaskan.

Terima kasih, Jimmie


"tarik file dari lokasi lain" ??? Apa yang kamu lakukan di sini? Menyalin, memindahkan, membuka ... apa yang Anda lakukan dengan file? Apakah path ke file di file txt? folder yang sama?
Logman

Saya minta maaf atas kebingungannya. Sulit untuk menjelaskan dengan benar sehingga saya telah mengedit posting asli saya untuk mencoba menjelaskan dengan lebih baik apa yang saya coba lakukan. Saya harap ini lebih masuk akal. Terima kasih telah melihat.
user2019273

Jawaban:


1

Saya menemukan jawabannya .... seperti biasa itu jauh lebih sederhana dari yang diharapkan.

Menambahkan xcopy di dalam loop berhasil

xcopy "%%f" "tmp" /y >Null

Jadi sekarang loop terlihat seperti ini ...

for /f "usebackqdelims=" %%a in ("temp.txt") do (
SET file!index!=%%a
xcopy "%%f" "tmp" /y >Null
ECHO !index! - %%a | more
SET /A index=!index!+1
)

Terima kasih......

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.