ubuntuusers.de

Windows-Verknüpfung (.Ink) unter Ubuntu verwenden

Status: Ungelöst | Ubuntu-Version: Nicht spezifiziert
Antworten |

stfischr Team-Icon

Avatar von stfischr

Anmeldungsdatum:
1. März 2007

Beiträge: 19197

Naja wenn man Wine voraussetzt kann man auch gleich nen Windowsdateimanager benutzen, wie black tencate schrieb.

diesch Team-Icon

Avatar von diesch

Anmeldungsdatum:
18. Februar 2009

Beiträge: 5072

Wohnort: Brandenburg an der Havel

Eine Version, die mit mehreren Windows-Partitionen umgehen kann:

#!/bin/sh

CFGFILE=~/.runlnkrc
DEFAULT_MOINTPOINT="/media/disk"


file=$(strings -an5 "$1"|grep -m1 '^[A-Z]:\\[A-Za-z].*'|sed  -e 's|\\|/|g')


if [ -e "$CFGFILE" ]; then
    while read drive dir; do
     file=$(echo "$file" | sed -e"s|^$drive|$dir|")
    done < $CFGFILE
fi

file=$(echo "$file" | sed -e"s|^[A-Z]:|$DEFAULT_MOINTPOINT|")

xdg-open "$file"

Die Konfigurationsdatei ~/.runlnkrc sieht z.B. so aus:

C: /media/C
D: /WINDOWS/
G: /media/DATEN

Damit funktioniert das Beispiel von kaputtnik

Die Mountpoints dürfen kein | enthalten. Wenn kein passender Eintrag gefunden wird, wird $DEFAULT_MOINTPOINT verwendet.

stfischr Team-Icon

Avatar von stfischr

Anmeldungsdatum:
1. März 2007

Beiträge: 19197

Hey super, als default-mountpoint könnte man ja <Pfad der *.lnk> - <Pfad in der *.lnk> Verwenden, so hätte man wenigstens nen sicheren Fallback für links die auf die gleiche Partition verlinken, was bei externen Datenträgern ja meist der Fall sein wird.

diesch Team-Icon

Avatar von diesch

Anmeldungsdatum:
18. Februar 2009

Beiträge: 5072

Wohnort: Brandenburg an der Havel

Diese Version benutzt als Standard den Mountpoint der Partition, auf der die .lnk-Datei liegt:

#!/bin/sh

LNK="$1"
CFGFILE=~/.runlnkrc
DEFAULT_MOUNTPOINT="$(df -P "$LNK"|awk '{FS="% ";if (FNR==2)print $2}')"


file="$(strings -an5 "$LNK"|grep -m1 '^[A-Z]:\\[A-Za-z].*'|sed  -e 's|\\|/|g')"


if [ -e "$CFGFILE" ]; then
    while read drive dir; do
     file="$(echo "$file" | sed -e"s|^$drive|$dir|")"
    done < "$CFGFILE"
fi

file="$(echo "$file" | sed -e"s|^[A-Z]:|$DEFAULT_MOUNTPOINT|")"

xdg-open "$file"

monateng

Avatar von monateng

Anmeldungsdatum:
19. April 2007

Beiträge: 1055

Wohnort: Wellerode

Hallo Saimen92,

dieser Thread ist meiner Meinung nach abgeschlossen worden von diesch als Programmierer mit Hilfe von kaputtnik und stfischr als Denker und Tester. Leider hast du dich nicht gemeldet. Was meinst du nun zu der Lösung?

Bzw. hat jemand diese Lösung im Einsatz gehabt und wenn ja mit welchen Ausgang?

PS: Ich besitze kein Windows.

stfischr Team-Icon

Avatar von stfischr

Anmeldungsdatum:
1. März 2007

Beiträge: 19197

Also Sonderzeichen sind noch nen Problem und Verzeichnisse werden in nem neuen Nautilusfenster geöffnet.

Unten nen paar Sonderzeichenlinks.

Dickes Danke an diesch für die Mühe.

PS: getestet mit externer USB-Platte (ntfs)

Verknüpfung mit Bilder ß äöü € @.lnk (540 Bytes)
Download Verknüpfung mit Bilder ß äöü € @.lnk
Verknüpfung mit 5zcmfxl.jpg.lnk (654 Bytes)
Download Verknüpfung mit 5zcmfxl.jpg.lnk

kaputtnik

Anmeldungsdatum:
31. Dezember 2007

Beiträge: 9245

monateng schrieb:

Hallo Saimen92,

Ja, wirklich schade, das er sich nicht mehr meldet...

PS: Ich besitze kein Windows.

Ich schon, aber obwohl das sehr interessant ist, brauche ich diese Verknüpfungen eingentlich nicht wirklch 😕 Unter Linux/Ubuntu brauche ich keine Win-Verknüpfungen...weil ich eigentlich kaum auf die Win-partition zugreifen muss. Verknüpfungen auf Datenpartitionen kann man ja auch so erstellen... 😀

Anders wird es bei Saimen92 sein, der ja auf einen Server diese Verknüpfungen hat.

Kann man das Ergebnis nicht irgendwie im Wiki festhalten? Es wäre zu schade, wenn dieser Thread irgendwann in den unendlichen Tiefen des Archiv's verschwände.

Vielen Dank an diesch für die hervorragende Arbeit!

stfischr Team-Icon

Avatar von stfischr

Anmeldungsdatum:
1. März 2007

Beiträge: 19197

kaputtnik schrieb:

Kann man das Ergebnis nicht irgendwie im Wiki festhalten? Es wäre zu schade, wenn dieser Thread irgendwann in den unendlichen Tiefen des Archiv's verschwände.

Sicher, Nautilus Skripte (Abschnitt „Beispielskripte“) kann jeder gern ergänzen.

diesch Team-Icon

Avatar von diesch

Anmeldungsdatum:
18. Februar 2009

Beiträge: 5072

Wohnort: Brandenburg an der Havel

stfischr schrieb:

Also Sonderzeichen sind noch nen Problem und

Das geht mit dem einfachen Ansatz über strings leider nicht viel besser

Verzeichnisse werden in nem neuen Nautilusfenster geöffnet.

Das Skript ist als normales Shell-Skript gedacht, dass sich desktop-unabhängig als Anwendung für .lnk-Dateien benutzen lässt. Für ein reines Nautilus-Skript wäre es natürlich schöner, direkt mit Nautilus zu kommunizieren, statt xdg-open zu benutzen, aber ich weiß nicht, wie man das macht (vermutlich irgendwie über DBus).

Saimen92

(Themenstarter)
Avatar von Saimen92

Anmeldungsdatum:
27. April 2009

Beiträge: 30

Wohnort: Ilshofen

Hi leute erstmal danke für eure vielen antworten, konnte mich leider nicht melden da die liebe Telekom mich nichtmehr ins internet lassn wollte ☹ Da ich völliger Linux-anfänger bin habe ich die löung des problems nicht ganz verstanden, kann mir das vielleicht jemand erklären?

stfischr Team-Icon

Avatar von stfischr

Anmeldungsdatum:
1. März 2007

Beiträge: 19197

Ich habe den Inhalt des Scripts von diesch in ne Textdatei kopiert, diese ausführbar gemacht und in das Nautilus-Scriptverzeichnis geschoben. (genauer in dem obigen Link erklärt). Außer bei Sonderzeichen geht es super, vielleicht setze ich mich da mal ran, wenn ich nach den Prüfungen Zeit habe.

diesch Team-Icon

Avatar von diesch

Anmeldungsdatum:
18. Februar 2009

Beiträge: 5072

Wohnort: Brandenburg an der Havel

Ich würde das Skript ausführbar machen, nach ~/bin/ schieben, in Nautilus auf eine .lnk-Datei rechtsklicken, "Mit anderer Anwendung öffnen" wählen im Dialog unten "Benutzerdefinierten Befehl benutzen" wählen, dort den Pfad zum Skript eintragen und "Öffnen" klicken. Danach kann man in Nautilus (und anderen Gnome-Programmen) .lnk-Dateien ganz normal öffnen.

tandogal

Avatar von tandogal

Anmeldungsdatum:
26. Februar 2007

Beiträge: 58

Habe gerade das Skript gesehen. Leider sind meine Programmierkenntnisse überfordert was die Erweiterung für smb-Freigaben angeht. Hat jemand eine einfache Idee das Skript dafür zu erweitern?

Antworten |