右键挂载选中的iso
#!/usr/bin/perl -w # This script mount the selected iso(s). use strict; my @files = split("\n", $ENV{NAUTILUS_SCRIPT_SELECTED_FILE_PATHS}); my $foo = system("gksudo -u root -k -m 'enter your password for root terminal access' /bin/echo 'r00t'"); if( ! $foo ) { foreach my $file (@files) { if ( ! -f $file && ! -l $file ) { my @dialog = ("gdialog","--title","Error","--msgbox", "\nError: Can not mount $file. \n\n Only regular files can be mounted. ","200", "300"); system (@dialog); } else { $_ = $file; my ( $dir, $filename ) = m/(.*)[\\\/](.+)/ ? ( $1, $2 ) : ( undef, $_ ); if( ! -d "/media/$filename" ) { system("sudo mkdir /media/$filename"); } system("sudo mount -o loop -t iso9660 $file /media/$filename"); } } }
右键卸载选中的iso
#!/usr/bin/perl -w # This script unmount the selected iso(s). use strict; my @files = split("\n", $ENV{NAUTILUS_SCRIPT_SELECTED_FILE_PATHS}); my $foo = system("gksudo -u root -k -m 'enter your password for root terminal access' /bin/echo 'r00t'"); if( ! $foo ) { foreach my $file (@files) { if ( ! -f $file && ! -l $file ) { my @dialog = ("gdialog","--title","Error","--msgbox", "\nError: Can not unmount $file. \n\n Only regular files can be unmounted. ","200", "300"); system (@dialog); } else { $_ = $file; my ( $dir, $filename ) = m/(.*)[\\\/](.+)/ ? ( $1, $2 ) : ( undef, $_ ); system("sudo umount /media/$filename"); if( -d "/media/$filename" ) { system("sudo rmdir /media/$filename"); } } } }
原创文章,转载请注明: 转载自猪在笑 [ http://www.huangwei.me/blog/ ]
本文链接地址: http://www.huangwei.me/blog/2010/08/30/nautilus-scripts-mount-iso/
最近评论