Puncte:0

Trageți și plasați un script

drapel gb
msf

Vreau să folosesc drag'n'drop într-un script, pentru a funcționa fără intervenția mouse-ului sau a tastaturii. Acest script ar trebui să ia (trage) unele fișiere și foldere și să le pună (drop) în mediul chroot din interiorul software-ului Cubic. Și după aceea pentru a apăsa automat butonul „Copiere” din Cubic. Deci toate trebuie să fie autonome și automatizate.Am căutat peste tot aici și pe alte site-uri/forumuri și am găsit aceste discuții: https://unix.stackexchange.com/questions/216507/drag-and-drop-without-the-drag/557100#557100 https://unix.stackexchange.com/questions/137905/can-i-drag-a-file-into-a-window-without-a-file-manager

De la primul link, aș dori să folosesc acest script, dar nu știu cum să-l modific pentru a funcționa pentru ceea ce vreau:

#!/usr/bin/env bash

doc="$0 <filename|'shot'>

Cu nume de fișier: Trage fișierul dat în locul în care mouse-ul folosește dragon.
               Faceți clic pentru a-l arunca (oriunde).
Cu „shot”: Fișierul va fi o fotografie a unei zone care trebuie selectată.
               => „drag_into shot” pe o combinație de taste rapide are sens. 
"

cmd_shot="împușcătură"
fisier=

exit_help () { echo -e „$doc”; ieșirea 1; }

select_shot_area () {
    # creați captură de ecran
    notify-send „Selectați zona – o vom trage și o vom trage până unde este mouse-ul”.
    cd „$HOME/Poze/fotografii/” || iesirea 1
    rm -f „latest.png”
    scrot -s '%Y-%m-%d_$wx$h_scrot.png' -e 'ln -s $f latest.png'
    file="`readlink latest.png`"
}

principal () {
    file="$1"
    test -z „$file” -o „$file” == „-h” && exit_help
    eval „$(xdotool getmouselocation --shell)” # în $X și $Y
    test „$file” == „$cmd_shot” && { select_shot_area || întoarcere 1; }
    killall dragon 2>/dev/null # Fără picături accidentale de articole greșite...
    dragon --și-ieșiți din „$fișier” &
    în timp ce adevărat; do
        xid="$(xdotool search --onlyvisible --class dragon | head -n 2)"
        test -z „$xid” || pauză
        somn 0,05
    Terminat
    xdotool mousemove --sync -w "$xid" 1 1 mousedown 1 mousemove $X $Y
    notify-send „Clic pentru a arunca $fișier...”
}

principal „$@”`

Deci s-ar putea modifica acest script, sau a crea/crea unul nou și diferit? Și cum?

24601 avatar
drapel in
Cum se leagă asta cu ubuntu? Întrebările de programare generice trebuie adresate pe https://unix.stackexchange.com/questions
msf avatar
drapel gb
msf
Folosesc Ubuntu pentru a face acest lucru. Nu are legătură strict cu una dintre componentele Ubuntu, dar dacă te uiți aici, o mulțime de întrebări nu au nimic de-a face cu componentele Ubuntu.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.