Updated Russian translation.
[midnight-commander.git] / src / vfs / extfs / helpers / uarj.in
blob15549a026c109c71bd0576c501455ee3023b14c4
1 #! /bin/sh
2 #
3 # Written by Viatcheslav Odintsov (2:5020/181)
4 # (C) 2002 ARJ Software Russia.
6 # This is an updated parser for ARJ archives in Midnight Commander. You need
7 # full ARJ rather than UNARJ. Open-source ARJ v 3.10 for Unix platforms can
8 # be obtained here:
10 # - http://www.sourceforge.net/projects/arj/
11 # - http://arj.sourceforge.net/
14 ARJ="arj -+ -ja1"
17 mcarjfs_list ()
19 $ARJ v "$1" | @AWK@ -v uuid=$(id -ru) '
21 if (($0 ~ /^[0-9]+\) .*/)||($0 ~ /^------------ ---------- ---------- -----/)){
22 if (filestr ~ /^[0-9]+\) .*/) {
23 printf "%s 1 %-8d %-8d %8d %02d-%02d-%02d %02d:%02d %s%s\n", perm, uid, gid, size, date[2], date[3], date[1], time[1], time[2], file, symfile
24 perm=""
25 file=""
26 symfile=""
27 filestr=""
31 if ($0 ~ /^[0-9]+\) .*/) {
32 filestr=$0
33 sub(/^[0-9]*\) /, "")
34 file=$0
35 uid=uuid
36 gid=0
39 if ($0 ~ /^.* [0-9]+[\t ]+[0-9]+ [0-9]\.[0-9][0-9][0-9] [0-9][0-9]-[0-9][0-9]-[0-9][0-9] [0-9][0-9]:[0-9][0-9]:[0-9][0-9].*/) {
40 size=$3
41 split($6, date, "-")
42 split($7, time, ":")
43 if ($8 ~ /^[rwx-]/) {perm=$8;}
44 else {perm="-rw-r--r--"}
47 if ($0 ~ /^[\t ]+SymLink -> .*/) {
48 symfile = " -> "$3
49 perm="l"substr(perm, 2)
52 if ($0 ~ /^[\t ]+Owner: UID [0-9]+\, GID [0-9]+/) {
53 uid=$3
54 gid=$5
55 owner=1
61 mcarjfs_copyout ()
63 $ARJ e -y "$1" "$2" -jw"$3" >/dev/null 2>/dev/null
67 umask 077
68 cmd="$1"
69 shift
70 case "$cmd" in
71 list) mcarjfs_list "$@" ;;
72 copyout) mcarjfs_copyout "$@" ;;
73 *) exit 1 ;;
74 esac
75 exit 0