Vous n'êtes pas identifié(e).
Pages : 1
Dernière modification par df871 (09-10-2013 11:06:59)
Cordialement
Bernard
Crées, Consolides... puis, Continues à Créer
Asus P4P800, P4C 2,6Ghz, Seagate laptop SSHD 500Go, Nvidia GF 6200 512 Mo avec Debian 7.0, Xfce 4.08
Hors ligne
Dernière modification par Anonyme (09-10-2013 12:49:27)
Dernière modification par df871 (09-10-2013 16:48:57)
Cordialement
Bernard
Crées, Consolides... puis, Continues à Créer
Asus P4P800, P4C 2,6Ghz, Seagate laptop SSHD 500Go, Nvidia GF 6200 512 Mo avec Debian 7.0, Xfce 4.08
Hors ligne
Cordialement
Bernard
Crées, Consolides... puis, Continues à Créer
Asus P4P800, P4C 2,6Ghz, Seagate laptop SSHD 500Go, Nvidia GF 6200 512 Mo avec Debian 7.0, Xfce 4.08
Hors ligne
#!/usr/bin/perl
######################################################
## Script to automatically arrange desktop icons,
## starting in the upper left.
## This can be run hourly from crontab like so:
## 0 * * * * <username> /usr/local/bin/icon_arrange.pl
## And/Or it can be placed in rc.local to run on every
## reboot. I don't reboot my machine very often,
## to I use the crontab option.
## son adresse sur la toile http://ubuntuforums.org/showthread.php?p=7755880
######################################################
use strict;
use File::Copy;
## might be multiple users, find out who's using the current x-session-manager
my @user = `ps aux|egrep 'x-session-manager'|grep -v egrep`;
chomp(@user[0]);
@user[0] =~ s/^(\w+)\s.*?$/$1/g;
my $user = @user[0];
## find out the location of the file (helps across distributions/updated kernels, etc...)
my $icons_file = `locate icons|grep desktop|grep screen0`;
chomp($icons_file);
## just in case there are multiple users, set the /home/<user>/ to the $user variable:
$icons_file =~ s/^\/home\/\w+\//\/home\/$user\//g;
## finally, we now have the right file, make a backup & proceed with parsing it:
copy("$icons_file", "$icons_file.bak");
open(CONFIG, "<$icons_file") or die("Can't open $icons_file for reading!!");
my @icon_config = <CONFIG>;
close(CONFIG);
## grab all the icon names on the desktop. Don't care about their positions, since I'm giving them new ones:
my @icons;
foreach my $line (@icon_config) {
if ($line =~ /^(\[.*?\])$/) { push(@icons, $1) }
}
## open the new config file to write to it:
open(NEWCONFIG, ">$icons_file") or die("Can't open $icons_file for writing!!");
## I personally prefer 'Home' at the top left, then 'File System' underneath it, then 'Trash', then so on...
print NEWCONFIG "[Home]\nrow=0\ncol=0\n
[File System]\nrow=1\ncol=0\n
[Trash]\nrow=2\ncol=0\n\n";
my $row_count = 3;
my $col_count = 0;
foreach my $icon (@icons) {
## on my particular desktop (1280x2048 dual monitor) there are 9 rows... Not sure how this plays out for lower resolutions...
## so here I incremement the row count on each loop until it reaches 9, then reset it to 0 and increment the col count up 1:
if ($row_count > 9) { $row_count = 0; $col_count++ }
if ($icon !~ /^(\[Home\]|\[File System\]|\[Trash\])$/) { print NEWCONFIG "$icon\nrow=$row_count\ncol=$col_count\n\n"; }
$row_count++;
}
Dernière modification par df871 (12-10-2013 15:41:12)
Cordialement
Bernard
Crées, Consolides... puis, Continues à Créer
Asus P4P800, P4C 2,6Ghz, Seagate laptop SSHD 500Go, Nvidia GF 6200 512 Mo avec Debian 7.0, Xfce 4.08
Hors ligne
#!/usr/bin/perl
######################################################
## Script to automatically arrange desktop icons
## Modified from the original script found at
## http://ubuntuforums.org/showthread.php?p=7755880
##
## http://askubuntu.com/questions/330986/h … me-in-xfce
######################################################
use strict;
## find out the location of the config file
my $icons_file = `locate icons.screen0 | grep \$USER | grep .config | grep desktop | head -n 1`;
## open the config file to read from it
open(CONFIG, "<$icons_file") or die("Can't open $icons_file for reading!!");
my @icon_config = <CONFIG>;
close(CONFIG);
## grab all the icon names from the desktop
my @icons;
foreach my $line (@icon_config) {
if ($line =~ /^(\[.*?\])$/) { push(@icons, $1) }
}
## sort all the icon names in alphabetical order
@icons = sort @icons;
## open the config file to write to it
open(NEWCONFIG, ">$icons_file") or die("Can't open $icons_file for writing!!");
my $row_count = 0;
my $col_count = 0;
foreach my $icon (@icons) {
## on my particular desktop (1440x900 monitor) there are 8 rows... Not sure how this plays out for other resolutions... so I incremement the row count on each loop until it reaches 8
if ($row_count > 8) { $row_count = 0; $col_count++ }
print NEWCONFIG "$icon\nrow=$row_count\ncol=$col_count\n\n";
$row_count++;
}
close(NEWCONFIG);
system("xfdesktop --reload");
Dernière modification par df871 (12-10-2013 15:40:44)
Cordialement
Bernard
Crées, Consolides... puis, Continues à Créer
Asus P4P800, P4C 2,6Ghz, Seagate laptop SSHD 500Go, Nvidia GF 6200 512 Mo avec Debian 7.0, Xfce 4.08
Hors ligne
Cordialement
Bernard
Crées, Consolides... puis, Continues à Créer
Asus P4P800, P4C 2,6Ghz, Seagate laptop SSHD 500Go, Nvidia GF 6200 512 Mo avec Debian 7.0, Xfce 4.08
Hors ligne
Pages : 1