From e45e8e474c7f8874481a41f39ef29ac771829755 Mon Sep 17 00:00:00 2001 From: Stuart Powers Date: Thu, 4 Oct 2018 00:21:27 -0400 Subject: [PATCH] add clone method --- cli.sh | 5 +++++ modules/clone.sh | 38 ++++++++++++++++++++++++++++++++++++++ package.json | 2 +- 3 files changed, 44 insertions(+), 1 deletion(-) create mode 100644 modules/clone.sh diff --git a/cli.sh b/cli.sh index 4090ada29..623ee36f2 100755 --- a/cli.sh +++ b/cli.sh @@ -33,6 +33,7 @@ source "$SCRIPTFOLDER/modules/version.sh" source "$SCRIPTFOLDER/modules/vnc.sh" source "$SCRIPTFOLDER/modules/wifi.sh" source "$SCRIPTFOLDER/modules/wificountry.sh" +source "$SCRIPTFOLDER/modules/clone.sh" @@ -150,6 +151,10 @@ case $1 in shift feedback "$*" ;; + clone) + checkroot + clone + ;; help) help "$2" ;; diff --git a/modules/clone.sh b/modules/clone.sh new file mode 100644 index 000000000..daafaec5e --- /dev/null +++ b/modules/clone.sh @@ -0,0 +1,38 @@ +#!/bin/bash + +function clone { + a=$(fdisk -l |grep /dev/mmcblk0: | grep -P '\d+ (?=bytes)' -o) + #echo "$a - /dev/mmcblk0" + + b=$(fdisk -l |grep /dev/sdb: | grep -P '\d+ (?=bytes)' -o) + #echo "$b - /dev/sdb" + + if [ -z "$a" ] || [ -z "$b" ]; then + echo "no SDCard detected" + return 1 + fi + + + + if [ $b -lt $a ]; then + echo "SDCard detected but not big enough" + return 1 + fi + + if [ $a -eq $b ] || [ $a -lt $b ]; then + + echo "copying...." + echo u > /proc/sysrq-trigger + dd if=/dev/mmcblk0 bs=1M of=/dev/sdb + + fi + +} + +function clone_help { + echo "" + echo "Usage: $(basename "$0")" + echo "" + echo "clones your treehouses image to an SDCard" + echo "" +} diff --git a/package.json b/package.json index fdf4f8ba3..752180050 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@treehouses/cli", - "version": "1.2.1", + "version": "1.2.2", "description": "Thin command-line interface for Raspberry Pi low level configuration.", "main": "cli.sh", "bin": {