blob: 9540362ffad8c18701812285bd14a6a14f4d93cf (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
#!/bin/bash
ARCHIVE="${HOME}/Nextcloud"
comp() {
find "${ARCHIVE}" -maxdepth $2 -type d -regextype posix-extended -regex "$1"
}
_cda() {
if [ ! -z "$2" ]; then
local cur
COMPREPLY=()
cur="${COMP_WORDS[COMP_CWORD]}"
if [ "${#2}" = "1" ]; then
D1=$(comp "${ARCHIVE}/[0-9]-.*" 1)
target=$(printf "${D1}" | grep "$2" | xargs basename)
elif [ "${#2}" = "3" ]; then
D2=$(comp "${ARCHIVE}/[0-9]+-[^/]+/[0-9]{3}-.*" 2)
target=$(printf "${D2}" | grep "$2" | xargs basename)
elif [ "${#2}" = "6" ]; then
D3=$(comp "${ARCHIVE}/[0-9]+-[^/]+/[0-9]{3}-[^/]+/[0-9]{3}\.[0-9]{2}-.*" 3)
target=$(printf "${D3}" | grep "$2" | xargs basename)
elif [ "${#2}" = "9" ]; then
D4=$(comp "${ARCHIVE}/[0-9]+-[^/]+/[0-9]{3}-[^/]+/[0-9]{3}\.[0-9]{2}-[^/]+/[0-9]{3}\.[0-9]{2}\.[a-zA-Z]+-.*" 4)
target=$(printf "${D4}" | grep "$2" | xargs basename)
fi
echo "$target"
COMPREPLY=($(compgen -W "${target}" $cur))
fi
}
complete -F _cda cda
|