پاسخ : (bash script) چاپ شدن خروجی دستور بجای ذخیره شدن خروجی در متغیر

ساخت وبلاگ
همونی که توی سوال قبلیم روش regex مینوشتم یعنی لینک

البته بعد نوشتن سوال اینجوری حلش کردم \:D/ ، در کل میخواستم یه اسکریپت بنویسم که فایلهای apk رو دسته جمعی بر اساس یه سری مقادیر داخل manifest ش تغییر نام بدم که مرتب بشن، به هدفم رسیدم (البته جا برای کامل تر و بهتر کردن داره)، ولی خب دوست دارم اتفاقی که میفتاد رو بدونم.

#!/bin/bash
rename_move() {
    ./aapt debug badging "$1" > temp
    label=$(cat temp | grep -Po "(?<=application: label=')(.+?)(?=')")
    package=$(cat temp | grep -Po "(?<=package: name=')(.+?)(?=')")
    version_code=$(cat temp | grep -Po "(?<=versionCode=')(.+?)(?=')")
    version_name=$(cat temp | grep -Po "(?<=versionName=')(.+?)(?=')")
    mv -f "$1" "$label - $version_name - $version_code - $package.apk"
}

for f in *.apk
do
    rename_move "$f"
done


محتوای manifest چیه؟ خطی که در اون تعریف شده رو بگذارید.


اینجوری مینوشتم:
manifest=$(./aapt debug badging "$1")
label=$(grep -Po "(?<=application: label=')(.+?)(?=')" "$manifest")

- - , .

اوبونتو...
ما را در سایت اوبونتو دنبال می کنید

برچسب : نویسنده : استخدام کار ubuntu بازدید : 35 تاريخ : جمعه 16 بهمن 1394 ساعت: 17:47