venerdì, settembre 16, 2011

 
Qui una libreria bash per accedere ai file ini formato windows.

_iniread()
{
file=$1
sezione=$2
chiave=$3
awk -F= "
function ltrim(s) {
sub(/^ */, \"\", s);
return s
}

function rtrim(s) {
sub(/ *$/, \"\", s);
return s
}

function trim(s) {
return rtrim(ltrim(s));
}
BEGIN { insection=0 }

/\[/ {
insection=0;
}

/^[^;]/ {
if (insection) {
key=trim(\$1);
if (key == \"$chiave\") {
gsub(\"\\r\",\"\");
printf(\"%s\\n\",trim(\$2));
}
}
}
/\[$sezione\]/ {
insection=1;
}
" $file
}

_iniwrite()
{
file=$1
sezione=$2
chiave=$3
valore=$4
ftemp=`mktemp /tmp/iniwr.XXXXXX`
chmod a+rwx $ftemp
awk -F= "
function ltrim(s) {
sub(/^ */, \"\", s);
return s
}

function rtrim(s) {
sub(/ *$/, \"\", s);
return s
}

function trim(s) {
return rtrim(ltrim(s));
}
BEGIN { insection=0;scritto=0; }
END {
if (!scritto) {
printf(\"[%s]\\r\\n\",trim(\"$sezione\"));
printf(\"%s=%s\\r\\n\\r\\n\",trim(\"$chiave\"),trim(\"$valore\"));
}
}

/\[/ {
if (insection && !scritto) {
printf(\"%s=%s\\r\\n\\r\\n\",trim(\"$chiave\"),trim(\"$valore\"));
scritto=1;
}
insection=0;
}
/\[$sezione\]/ {
insection=1;
}

{
gsub(\"\\r\",\"\");
if (insection) {
if (trim(\$1) == trim(\"$chiave\")) {
printf(\"%s=%s\\r\\n\",trim(\$1),trim(\"$valore\"));
scritto=1;
} else
printf(\"%s\\r\\n\",\$0);
} else
printf(\"%s\\r\\n\",\$0);
}
" $file > $ftemp
err=$?
[ $err -ne 0 ] && echo "Errore nella iniwrite $file"
[ $err -eq 0 ] && mv $ftemp $file
}

_inidelete()
{
file=$1
sezione=$2
chiave=$3
ftemp=`mktemp /tmp/iniwr.XXXXXX`
chmod a+rwx $ftemp
awk -F= "
function ltrim(s) {
sub(/^ */, \"\", s);
return s
}

function rtrim(s) {
sub(/ *$/, \"\", s);
return s
}

function trim(s) {
return rtrim(ltrim(s));
}
BEGIN { insection=0 }

/\[/ {
insection=0;
}
/\[$sezione\]/i {
insection=1;
}

{
gsub(\"\\r\",\"\");
if (insection) {
if (trim(\$1) != trim(\"$chiave\"))
printf(\"%s\\r\\n\",\$0);
} else
printf(\"%s\\r\\n\",\$0);
}
" $file > $ftemp
err=$?
[ $err -ne 0 ] && echo "Errore nella iniwrite $file"
[ $err -eq 0 ] && mv $ftemp $file
}

sabato, luglio 16, 2011

 

Ubuntu 11.04 e Huawei E173

Risolto finalmente il problema della chiavetta wind con ubuntu.

la chiavetta viene rilevata come segue (lsusb)

Bus 001 Device 013: ID 12d1:1436 Huawei Technologies Co., Ltd.


Il problema è legato a usb_modemswitch che non rileva la chiavetta correttamente, per risolvere il problema è necessario creare il file 12d1:1436 nella cartella /usr/share/usb_modeswitch con il seguente contenuto:

DefaultVendor= 0x12d1
DefaultProduct=0x1446

TargetVendor= 0x12d1
TargetProductList="1001,1406,140b,140c,1412,141b,1433,14ac,1436"

CheckSuccess=20

MessageContent="55534243123456780000000000000011062000000100000000000000000000"


A questo punto è risolto il problema. :)

sabato, novembre 21, 2009

 
2012: cavoli ke scena quella della distruzione della California! Wow

 
ke casino!

domenica, ottobre 25, 2009

 
si ricomincia!

venerdì, ottobre 23, 2009

 
ke casino!

giovedì, ottobre 15, 2009

 
4 U
4 U

This page is powered by Blogger. Isn't yours?

Iscriviti a Post [Atom]