Remove awk dependency
[platform/core/system/initrd-recovery.git] / src / system-recovery / recovery-init.in
index a173355..171920a 100644 (file)
@@ -3,7 +3,6 @@
 SYSTEM_RECOVERY="/usr/bin/system-recovery"
 FAKE_ROOT=/system
 
-AWK="/usr/bin/awk"
 GREP="/usr/bin/grep"
 MOUNT="/usr/bin/mount"
 PARTX="/usr/sbin/partx"
@@ -12,6 +11,9 @@ REBOOT="/usr/lib/initrd-recovery/minireboot"
 SYNC="/usr/bin/sync"
 TOUCH="/usr/bin/touch"
 UMOUNT="/usr/bin/umount"
+TR="/usr/bin/tr"
+SED="/usr/bin/sed"
+CUT="/usr/bin/cut"
 
 #------------------------------------------------
 #       get partition id
@@ -19,15 +21,27 @@ UMOUNT="/usr/bin/umount"
 get_partition_id() {
     EMMC_DEVICE="/dev/mmcblk0"
     RET_PARTX=$("$PARTX" -s ${EMMC_DEVICE})
-    TEST=$(IFS=; echo $RET_PARTX | "$AWK" 'NR>1' | "$AWK" '{print $6}')
+    TEST=$(echo "$RET_PARTX" | "$TR" -s ' ' | "$SED" -e '1d' -e 's/^ //' | "$CUT" -d ' ' -f 6)
     if [ "z$TEST" == "z" ]; then
         PART_ROOTFS=$("$BLKID" -L "rootfs" -o device)
         PART_SYSTEM_DATA=$("$BLKID" -L "system-data" -o device)
         PART_USER=$("$BLKID" -L "user" -o device)
     else
-        PART_ROOTFS=${EMMC_DEVICE}p$(IFS=; echo $RET_PARTX | "$AWK" 'tolower($6) == "rootfs" {print $1}')
-        PART_SYSTEM_DATA=${EMMC_DEVICE}p$(IFS=; echo $RET_PARTX | "$AWK" 'tolower($6) == "system-data" {print $1}')
-        PART_USER=${EMMC_DEVICE}p$(IFS=; echo $RET_PARTX | "$AWK" 'tolower($6) == "user" {print $1}')
+        PART_ROOTFS=${EMMC_DEVICE}p$(
+                       echo "$RET_PARTX" |
+                       "$TR" -s ' ' | "$TR" '[:upper:]' '[:lower:]' |
+                       "$GREP" "rootfs" | "$SED" 's/^ //' |
+                       "$CUT" -d ' ' -f 1)
+        PART_SYSTEM_DATA=${EMMC_DEVICE}p$(
+                       echo "$RET_PARTX" |
+                       "$TR" -s ' ' | "$TR" '[:upper:]' '[:lower:]' |
+                       "$GREP" "system-data" | "$SED" 's/^ //' |
+                       "$CUT" -d ' ' -f 1)
+        PART_USER=${EMMC_DEVICE}p$(
+                       echo "$RET_PARTX" |
+                       "$TR" -s ' ' | "$TR" '[:upper:]' '[:lower:]' |
+                       "$GREP" "user" | "$SED" 's/^ //' |
+                       "$CUT" -d ' ' -f 1)
     fi
 }