]> Sergey Matveev's repositories - dotfiles.git/commitdiff
Workability with spaces in filenames
authorSergey Matveev <stargrave@stargrave.org>
Mon, 4 Dec 2023 09:51:51 +0000 (12:51 +0300)
committerSergey Matveev <stargrave@stargrave.org>
Mon, 4 Dec 2023 09:51:51 +0000 (12:51 +0300)
nnn/bin/_nnn-cp

index ca733b4c0c2a3e13ff2366ed360b445f99730fce..8a8a395cd33a21d402b3ad835a7d1e08c641a788 100755 (executable)
@@ -3,10 +3,11 @@
 set -e
 sel=${NNN_SEL:-${XDG_CONFIG_HOME:-$HOME/.config}/nnn/.selection}
 [[ -s $sel ]]
-read -d $"\x00" -A tgts < $sel || :
+tgts=$(xargs -0 -L1 < $sel)
+tgts=(${(f)tgts})
 size=$(du -A -c $tgts)
 size=(${=size})
 size=${size[$#size - 1]}
-for tgt ($tgts) ( cd $tgt:h ; tar cf - $tgt:t ) |
+for tgt ($tgts) { pushd $tgt:h ; tar cf - $tgt:t ; popd } |
 pv --wait --interval 0.5 --size ${size}k |
 tar xf - --options read_concatenated_archives