Size: a a a

2021 June 02

зк

захар который... in pro.bash
Четыре варианта, которые копируют только один файл (и вставка потом работает):
источник

зк

захар который... in pro.bash
#!/bin/sh

while read -r file
do
   case "$1" in
 a) xclip -selection clipboard "$file" -t image/png
     ;;
 b) xclip -selection clipboard -target image/png "$file"
     ;;
 c) xclip -t "$(xdg-mime query filetype "$file")" -selection clipboard <"$file"
     ;;
 d) convert "$file" png:- | xclip -selection clipboard -target image/png
     ;;
   esac
done
источник

зк

захар который... in pro.bash
Ещё четыре варианта, которые, по идее, должны работать, но не работают:
источник

зк

захар который... in pro.bash
#!/bin/sh

while read -r file
do
   case "$1" in
 a) xclip -selection clipboard -t image/png "$(readlink -f "$file")"
     ;;
 b) tr '\n' '\0' | xargs -0 xclip-copyfile
     ;;
 c) xclip -selection clipboard -t image/png "$(readlink -f "$file")"
     ;;
 d) while read file; do
           last_file=$file
       done
       extension="${last_file##*.}"
       if [ "$extension" = "png" ]; then
           xclip -selection clipboard -target image/png "$last_file"
       fi
       # This does not work yet - reason unknown
       if [ "$extension" = "jpg" ]; then
           xclip -selection clipboard -target image/jpeg "$last_file"
       fi
       notify-send "sxiv: Image '$last_file' copied to clipboard."
     ;;
   esac
done
источник

зк

захар который... in pro.bash
Как передать файлы списком?
источник

SA

Sergey Aar in pro.bash
Приветствую, можете пнуть как сделать правильно?

есть функция error_exit. она выводит $1 в stderr

а есть код:
nginx -t 2>> /dev/null || error_exit "nginx config fail";

можно ли заменить фразу "nginx config fail" на то, что выведет nginx -t

есть подозрение, что можно сделать через дескрипторы, но нет понимания как
источник

EK

Evgeny Kuchkov in pro.bash
источник

аᶘ

асоциальный пикотран... in pro.bash
result=$(nginx -t 2> /dev/null)
[ $? -ne 0 ] && error_exit  "${result}"
источник

V

Vikentsi in pro.bash
Так сертификат можно вытянуть через curl. Если там веб.
источник

аᶘ

асоциальный пикотран... in pro.bash
result=$(nginx -t 2>&1)
[ $? -ne 0 ] && error_exit  "${result}"
источник

SA

Sergey Aar in pro.bash
а что значит ампресанд?
источник

аᶘ

асоциальный пикотран... in pro.bash
конструкция X>&Y позволяет перенаправить поток X в поток Y
а конструкция var=$(...) забирает всё, что идёт в поток №1 (=stdout), в переменную var
источник

∀lǝxǝʎ in pro.bash
"поток" верно называть File Descriptor
источник

аᶘ

асоциальный пикотран... in pro.bash
я знал, что кто-нибудь это напишет
источник

аᶘ

асоциальный пикотран... in pro.bash
у меня на это есть цитата из мана…
источник

∀lǝxǝʎ in pro.bash
З — Зануда
источник

∀lǝxǝʎ in pro.bash
трави
источник

аᶘ

асоциальный пикотран... in pro.bash
тут вопрос в том, как именно взаимодействует шелл с файловыми дескрипторами

если он использует POSIX-совместимые функции а-ля fopen/fclose/fwrite/fread, то тогда он работает не с файловыми дескрипторами, а с потоками (stream)

NAME
      fopen, fdopen, freopen - stream open functions


если же он это делает на уровне обёрток над сисколлами, то очевидно с файловыми дескрипторами
источник

∀lǝxǝʎ in pro.bash
все эти функции всё равно работают с FD.
источник

аᶘ

асоциальный пикотран... in pro.bash
зависит от конкретной реализации
в понятиях POSIX вообще нет file descriptor, это implemetation* (ну или OS)-specific-термин
источник