Questa è una prima versione, che chiamerò lxlnk-0.1 e l'ho scritta in questo preciso momento. Quindi allego il codice e un paio di info su cosa contiene e cosa invece è da fare (e farò si presume):
- Codice: Seleziona tutto
#!/bin/bash
tipo=`zenity --list \
--title="Segli il tipo di link desiderato" \
--column="Tipo" --column="Azione" \
"Link simbolico" "Crea un collegamento simbolico al file (CONSIGLIATO)" \
"Link simbolico cartella" "Crea un collegamento simbolico alla cartella" \
"Hard link" "Crea un collegamento che segue gli spostamenti del file originario (no Cartelle)"`
case $tipo in
"Link simbolico")
ce=`zenity --file-selection --title="Scegli il file da linkare"`
case $? in
0)
ln -s "$ce" "$ce"-lnk
zenity --info --text="Fatto!"
lxlnk
;;
1)
zenity --info --text="File non selezionato!"
lxlnk
;;
-1)
zenity --info --text="File non selezionato!"
lxlnk
;;
esac
exit 0
;;
"Link simbolico cartella")
ce=`zenity --file-selection --directory --title="Scegli la cartella da linkare"`
case $? in
0)
ln -s "$ce" "$ce"-lnk
zenity --info --text="Fatto!"
lxlnk
;;
1)
zenity --info --text="File non selezionato!"
lxlnk
;;
-1)
zenity --info --text="File non selezionato!"
lxlnk
;;
esac
exit 0
;;
"Hard link")
ce=`zenity --file-selection --title="Scegli il file da linkare"`
case $? in
0)
ln "$ce" "$ce"-hlnk
zenity --info --text="Fatto!"
lxlnk
;;
1)
zenity --info --text="File non selezionato!"
lxlnk
;;
-1)
zenity --info --text="File non selezionato!"
lxlnk
;;
esac
;;
esac
exit 0
;;
exit 0
Per usarlo ovviamente occorre avere zenity (di base in Ubuntu) quindi se non lo avete:
- Codice: Seleziona tutto
sudo apt-get install zenity
Il mio scopo è fornire un .deb con lanciatore, ma in questo istante mi limito a postare il codice dello script, quindi se volete usarlo create un file di testo chiamato "lxlnk" e incollateci quanto sopra, rendetelo eseguibile (click dx -> proprietà -> permessi) e potete avviarlo con un doppioclick o da riga:
- Codice: Seleziona tutto
./lxlnk
Lo script è stato scritto in pochi minuti quindi le funzioni sono piuttosto semplici:
Cosa fa:
crea link simbolici a file e cartelle
crea hard link a file
Cosa non fa e bisogna sviluppare:
riconoscere link creati precedentemente con lo stesso nome (li sovrascrive, in poche parole vuol dire che potete creare solo un link per file alla volta fin che non spostate il link creato)
link multipli (solo un file/cartella alla volta)
Perfezionamenti:
adattare finestre
ma insomma ln da terminale non fa queste cose quindi avere la grafica è già un passo avanti

Spero possa tornare utile, fatemi sapere e fatemi sapere se potrebbe avere qualcos'altro.
Ecco uno screen:


)

