Рейтинг:0

Перетащите скрипт

флаг gb
msf

Я хочу использовать drag'n'drop в скрипте, чтобы работать без вмешательства мыши или клавиатуры. Этот скрипт должен брать (перетаскивать) некоторые файлы и папки и помещать (перетаскивать) в среду chroot внутри программного обеспечения Cubic. И после этого для авто нажмите кнопку "Копировать" от Cubic. Так что все должно быть автономным и автоматизированным.Я искал здесь и на других сайтах/форумах и нашел эти обсуждения: https://unix.stackexchange.com/questions/216507/перетаскивание без перетаскивания/557100#557100 https://unix.stackexchange.com/questions/137905/can-i-drag-a-file-into-a-window-without-a-file-manager

Из первой ссылки я хотел бы использовать этот скрипт, но я не знаю, как изменить его, чтобы он работал для того, что я хочу:

#!/usr/bin/env bash

doc="$0 <имя файла|'выстрел'>

С именем файла: перетаскивает данный файл туда, где мышь использует дракона.
               Нажмите, чтобы бросить его (где угодно).
С помощью 'shot': файл будет снимком выбранной области.
               => 'drag_into shot' для комбинации горячих клавиш имеет смысл. 
"

cmd_shot="выстрел"
файл=

exit_help () { echo -e "$doc"; выход 1; }

select_shot_area () {
    # создать снимок экрана
    notify-send "Выделите область - мы ее снимем и перетащим туда, где находится мышь."
    cd "$HOME/Изображения/снимки/" || выход 1
    rm -f "последний.png"
    scrot -s '%Y-%m-%d_$wx$h_scrot.png' -e 'ln -s $f last.png'
    file="`readlink последний.png`"
}

главный () {
    файл = "$1"
    test -z "$file" -o "$file" == "-h" && exit_help
    eval "$(xdotool getmouselocation --shell)" # в $X и $Y
    test "$file" == "$cmd_shot" && { select_shot_area || вернуть 1; }
    killall dragon 2>/dev/null # Никаких случайных выпадений не тех предметов...
    дракон --and-exit "$file" &
    пока верно; делать
        xid="$(xdotool search --onlyvisible --class dragon | head -n 2)"
        тест -z "$xid" || сломать
        спать 0,05
    сделано
    xdotool mousemove --sync -w "$xid" 1 1 mousedown 1 mousemove $X $Y
    notify-send "Нажмите, чтобы удалить файл $..."
}

главная "$@"`

Так можно ли изменить этот скрипт или сделать/создать новый и другой? И как?

24601 avatar
флаг in
Как это связано с убунту? Общие вопросы по программированию следует задавать на странице https://unix.stackexchange.com/questions.
msf avatar
флаг gb
msf
Я использую Ubuntu для этого. Это не связано строго с одним из компонентов Ubuntu, но если вы посмотрите здесь, многие вопросы не имеют ничего общего с компонентами Ubuntu.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.