summaryrefslogtreecommitdiff
path: root/rvs/plugins/files/bin
diff options
context:
space:
mode:
Diffstat (limited to 'rvs/plugins/files/bin')
-rw-r--r--rvs/plugins/files/bin/get.d.sh2
-rw-r--r--rvs/plugins/files/bin/print.sh39
-rw-r--r--rvs/plugins/files/bin/tree.sh40
3 files changed, 80 insertions, 1 deletions
diff --git a/rvs/plugins/files/bin/get.d.sh b/rvs/plugins/files/bin/get.d.sh
index 89bd92a..646e29d 100644
--- a/rvs/plugins/files/bin/get.d.sh
+++ b/rvs/plugins/files/bin/get.d.sh
@@ -38,7 +38,7 @@ while read line; do
i="`echo "$line" | cut -f4`" # ID
n="`echo "$line" | cut -f5-`" # name
"$RVS" get "$n" "$i"
- #chmod "$p" "$n"
+ chmod "$p" "$n"
#chown "$o:$g" "$n"
done < "$tmp"
diff --git a/rvs/plugins/files/bin/print.sh b/rvs/plugins/files/bin/print.sh
new file mode 100644
index 0000000..3657d2f
--- /dev/null
+++ b/rvs/plugins/files/bin/print.sh
@@ -0,0 +1,39 @@
+#!/bin/sh
+name='print'
+ver=0.1
+# Copyright (C) 2010 Luke Shumaker
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; see the file COPYING.
+# If not, see <http://www.gnu.org/licenses>.
+
+. "$LIBDIR/@ID@/stdio"
+
+usage='ID'
+id="`getvar "$1"`"
+
+hash="`"$RVS" blob-gethash "$id"`"
+file="$REPO/@ID@/$hash"
+
+if [ -e "$file" ]; then
+ t="`"$RVS" blob-gettype "$id"`"
+ type=''
+ case "$t" in
+ f) type='regular file';;
+ d) type='directory';;
+ esac
+ echo "File Type: $t ($type)"
+else
+ fatal "no object with ID \`$id'"
+fi
+
diff --git a/rvs/plugins/files/bin/tree.sh b/rvs/plugins/files/bin/tree.sh
new file mode 100644
index 0000000..6164d94
--- /dev/null
+++ b/rvs/plugins/files/bin/tree.sh
@@ -0,0 +1,40 @@
+#!/usr/bin/env bash
+name='tree'
+ver=0.1
+# Copyright (C) 2010 Luke Shumaker
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; see the file COPYING.
+# If not, see <http://www.gnu.org/licenses>.
+
+. "$LIBDIR/@ID@/stdio"
+
+usage="DIR_ID [NAME] [PREFIX] [LAST]"
+id="`getvar "$1"`"
+name="${2-.}"
+pref="$3"
+last="$4"
+
+echo "$pref $name $id"
+pref=' | '
+"$RVS" ls "$id" '%i\t%n' | while read line; do
+ i="`echo "$line" | cut -f1`"
+ n="`echo "$line" | cut -f2-`"
+ t="`"$RVS" blob-gettype "$i"`"
+ if [ "$t" = 'd' ]
+ "$RVS" tree "$i" "$n" "$pref"
+ else
+ echo "$pref $n $i"
+ fi
+done
+