docs
[mirrors/Programs.git] / bash / virtualbox-shell.sh
CommitLineData
3f763f5a
H
1#!/bin/bash
2dialog=$(which dialog);
3
4get_vbox_pipes() {
5 grep 'hostMode="HostPipe"' ~/.VirtualBox/Machines/*/*.xml | sed -e 's/.*path="\([^"]*\)".*/\1/g' | while read i; do
6 for prefix in '' "$HOME/" "$HOME/.VirtualBox/"; do
7 socket="$prefix""$i"
8 test -S "$socket" && {
9 echo "$socket";
10 }
11 done;
12 done;
13}
14
15tmp="$(mktemp)";
16get_vbox_pipes | while read socket; do
17 echo -n "$socket"; echo -ne '\0';
18 echo -n "${socket##*/}"; echo -ne '\0';
19done | xargs -0 "$dialog" --no-shadow --trim --title 'Sockets' --backtitle 'VirtualBox serial terminal' --menu -- "Select the socket" 0 0 0 2>"$tmp" || {
20 echo 'ERROR: No vbox sockets found or selected. :-( Bye.';
21 exit 1;
22}
23socket="$(cat "$tmp")";
24rm -f "$tmp";
25
26minicom -c on -o -D unix#"$socket";
This page took 0.176482 seconds and 4 git commands to generate.