Parar una aplicacion cuando otras se ejecutan

#!/bin/bash
# Por Paco Aldarias.
# 23.8.2009
# idle.sh
# Este scripts en bash permite activar
# mldonkey cuando esta idle o inactivo
# Siendo el estado activo, cuando se ejecuta firefox xql etc

apli=»firefox xql et.x86″
temp=»/tmp/idle.txt»
ml=»/home/paco/mldonkey.sh»
flog=»/tmp/idle.log»
log=1

[ -f $flog ] && rm -f $flog
[ $log -eq 1 ] && echo «Arrancado: $(date +%H:%M:%S) $flog» >> $flog

# tiempos en segundos
tini=3m
tidle=1m
tbusy=5m

# Limpiamos si esta en ejecución el script.
if [ -f $temp ];then
kill $(cat $temp)
rm -f $temp
fi

# Si esta en marcha paramos ml
proc=$(ps aux | grep mlnet | grep -v grep | wc -l)
[ $proc -gt 0 ] && $ml stop
[ $1 ] && [ $1 = «stop» ] && exit

sleep $tini

# Bucle infinito
while :
do
descargar=1

# Hacemos esto por cada aplicacion que queremos que para ml
for i in $(echo $apli)
do
if [ $descargar -eq 1 ];then
up=$(ps aux | grep «$i» | grep -v grep | awk ‘{print $11}’)
if [ $up ];then
descargar=0
[ $log -eq 1 ] && echo «UP: $up $i»>> $flog
fi
fi
done

# Descargamos. Ponemos en marcha mldonkey
if [ $descargar -eq 1 ]
then
[ $log -eq 1 ] && echo «$(date +%H:%M:%S) Podemos descargar» >> $flog
if [ ! -f $temp ];then
echo $$ > $temp
sh $ml start
fi
sleep $tidle
# Apagamos. Paramos mldonkey
else
[ $log -eq 1 ] && echo «$(date +%H:%M:%S) No podemos descargar» >> $flog
if [ -f $temp ];then
sh $ml stop
rm -f $temp
fi
sleep $tbusy
fi

done

GESTOR DE BASE DE DATOS: SQLITE

INTRODUCCION
SQLITE es un SGBD muy sencillo y rapido. Está soportado por los moviles IPHONE.
Veamos nociones básica con linux.

ORDENES BASICAS

Entrar en la base de datos:
$> sqllite database.sqlite

Ver las tablas
sqlite>.tables

Ver el esquema de una tabla:
sqlite> .schema tabla

Ver el esquema de una tabla:
sqlite> .quit

CREAR SCRIPTS EN BASH:

#! /usr/bin/env bash
# execute some bash scripting commands here
sqlite3 basededatos.sqlitedb < < rowid="record_id">
CREAR UN CVS DE UNA TABLA

sqlite3 AddressBook.sqlitedb
sqlite> .mode csv
sqlite> .output contacts.csv
sqlite> SELECT ROWID, First, Last, ABMultiValue.value, record_id FROM ABPerson, ABMultiValue WHERE ROWID=record_id;
sqlite > .quit

COPIA DE SEGURIDAD

$> sqlite3 AddressBook.sqlitedb .dump .quit > myDumpSQLite.sql
gt; sqlite3 AddressBook.sqlitedb .dump .quit > myDumpSQLite.sql

SOFTWARE
sqlitebrowser : es un programa gráfico para gestión de sqlite.

INCONVENIENTES
No premite la orden CREATE TABLE ON SELECT * FROM TABLA;

BIBLIOGRAFIA.
MANUAL OFICIAL: http://www.sqlite.org/lang.html
LINEA DE COMANDOS: http://sqlite.org/sqlite.html

Medir el nivel de señal wireless


Debido a que no me llegaba la señal wireless, me puse a mirar como medirla, y además de forma numérica en %.
La versión de linux es ubuntu 8.1.

uname -a
Linux laurita 2.6.27-14-generic #1 SMP Wed Jul 29 09:01:45 UTC 2009 i686 GNU/Linux

La tarjeta wireless es Intel

lspci | grep Wireless
03:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG [Golan] Network Connection (rev 02)

Podremos ver la calidad de la señal es 47 siendo la máxima de 70:

sudo iwconfig eth1 | grep Quality
Link Quality=47/70 Signal level=-63 dBm Noise level=-127 dBm

Podemos verlo de forma numérica, aparece como 50 aquí:

cat /proc/net/wireless
Inter-| sta-| Quality | Discarded packets | Missed | WE
face | tus | link level noise | nwid crypt frag retry misc | beacon | 22
eth1: 0000 50. -60. -127. 0 0 0 0 0 0

Podemos hacer este script para que nos de el % en tiempo real:
— inicio copiar y pegar

# Por Paco Aldarias
# 11.8.09
# senyal.sh

# Calculo del maximo valor de señal.
max_lin=$( iwconfig eth1 | awk ‘ /Quality/ { print $2 }’ | cut -d «/» -f2)
suma=0
valores=0
promedio=0
maximo=0
minimo=100
while :
do
clear
echo «MEDIDOR DE NIVELES DE SEÑAL»
echo «Por Paco Aldarias. 11.8.09»
# Obtener el valor de la señal
s=$(cat /proc/net/wireless | tail -1 | awk ‘{ print $3 }’ | cut -d «.» -f1)
# Calculo del porcentaje
ps=$(echo » ($s * 100 / $max_lin) » | bc )
let suma=suma+ps
let valores=valores+1
let promedio=suma/valores
if [ $ps -lt $minimo ];then minimo=$ps; fi
if [ $ps -gt $maximo ];then maximo=$ps; fi
echo «Quality link. Calidad señal [MAXIMO $max_lin]: $s -> $ps %»
echo «Minimo: $minimo % ; Maximo: $maximo %; Promedio: $promedio %»
sleep 1
done

— fin copiar y pegar

El resultado es:

MEDIDOR DE NIVELES DE SEÑAL
Por Paco Aldarias. 11.8.09
Quality link. Calidad señal [MAXIMO 70]: 37 -> 52 %
Minimo: 50 % ; Maximo: 52 %; Promedio: 51 %

Otra opcion, la cual nos deja sin red, es usar el programa:
kismet

Otras opciones, según Ramón Onrubia:

Para hacer un scan por consola del nivel de potencia del resto de redes en
tiempo real, con:

airodump-ng interfaz

Para ver el nivel de potencia de la red a la que estoy asociado según
el punto de la casa en que me encuentre y con una frecuencia de un
segundo entre muestreos, tan sólo hago esto:

watch -t -n 1 «iwconfig wlan0 | grep Link»

suponiendo que la tarjeta es la wlan0.

Desbloquear el anillo de contraseñas

Si cada vez que arrancar el pc te pide la contraseña para poder conectarte a la red,

Hay una solución:

rm ~/.gnome2/keyrings/*
sudo aptitude remove libpam-keyring

Cuando reinicies, te pedira la contraseña para acceder a la red, la introducimos,
y despues te pedira la contraseña para el anillo, entonces la dejaremos en blanco.

Fuentes:
http://mundogeek.net/archivos/2007/08/31/como-hacer-que-el-gestor-de-claves-de-gnome-deje-de-preguntar-la-contrasena/

MT3/4: CREATIVE ZEN MOSAIC EN LINUX

A continuación veremos comandos de consula para gestionar
un dispositivo con protocolo MTP, desde consola linux,
unsando las funciones de libreria mtp.

QUE NECESITAMOS INSTALAR

sudo aptitude install mtp-tools

ESTADO DEL DISPOSITIVO

Para gestionarlo desde consola:

mtp-detect
Conocer la carga de bateria, y otraas propiedades

libmtp version: 0.3.0
Listing raw device(s)
Device 0 (VID=041e and PID=4161) is UNKNOWN.
Please report this VID/PID and the device model to the libmtp development team
Found 1 device(s):
041e:4161 @ bus 0, dev 9
Attempting to connect device(s)
PTP: Opening session

mtp-detect | grep Space

Ver espacio disponible

mtp-detect | grep Capacity

Ver capacidad total

mtp-detect | awk ‘/Battery level/ {print $6}’ | cut -d «(» -f2 | cut -d «%» -f1

Permite ver carga de bateria.

LISTAS DE REPRODUCCION

mtp-playlists
Muestra todas las (play list) listas de reprodccion con sus mp3.

Ejemplo:

Playlist ID: 105932
Name: rosa
Parent ID: 100
Tracks:
69564: RosaVientosPodcast.com – RVP #409 (13 Julio 2009)
70752: RosaVientosPodcast.com – RVP #408 (12 Julio 2009)

mtp-getplaylist id
Muestra una playlist

Ejemplo:
mtp-getplaylist 105932
libmtp version: 0.3.0
Device 0 (VID=041e and PID=4161) is UNKNOWN.
Please report this VID/PID and the device model to the libmtp development team
PTP: Opening session
Number of items: 28
69564: RosaVientosPodcast.com – RVP #409 (13 Julio 2009)
70752: RosaVientosPodcast.com – RVP #408 (12 Julio 2009)

mtp-getplaylist -n playlistid
Borra lista

mtp-newplaylist -i 16777249 -i 16777247 -i 16777224 -n milista
Introduce ficheros de música con File ID 16777249,16777247,16777224 dentro de una lista de reproducción llamada milista, la cual la crea si no existe. Podemos ver los File ID con la orden mtp-files.

GESTION DE FICHEROS

mtp-files – lista los ficheros

Ejemplo:
File ID: 110740
Filename: 20090209.mp3
File size 38723605 (0x00000000024EE015) bytes
Parent ID: 96
Storage ID: 0x00010001
Filetype: ISO MPEG-1 Audio Layer 3
File ID: 111925
Filename: 20090208.mp3
File size 38629147 (0x00000000024D6F1B) bytes
Parent ID: 96
Storage ID: 0x00010001
Filetype: ISO MPEG-1 Audio Layer 3

mtp-delfile fichero – borra los ficheros

mtp-getfile – coge un fichero

mtp-sendfile fichero-origen fichero-destino
Envia un fichero

Ejemplo:
mtp-sendfile 20090706.mp3 20090706.mp3
Your system does not appear to have UTF-8 enabled ($LANG=»es_ES.UTF-8″)
If you want to have support for diacritics and Unicode characters,
please switch your locale to an UTF-8 locale, e.g. «en_US.UTF-8».
libmtp version: 0.3.0

Device 0 (VID=041e and PID=4161) is UNKNOWN.
Please report this VID/PID and the device model to the libmtp development team
PTP: Opening session
Sending 20090706.mp3 to 20090706.mp3
type:mp3,1
Sending file…
Progress: 39621060 of 39621060 (100%)
New file ID: 45632
PTP: Closing session

mtp-sendfile audio.mp3 -f U2
Envia un el fichero f.mp3 a la carpeta U2

mtp-tracks
Muestra las pistas grabadas.

Grabar todos los mp3 nuevos de una carpeta
ls -la | grep mp3 | awk ‘{print $8}’ > temp.txt

for i in $(cat temp.txt);do
echo $i
existe=0
for j in $(mtp-tracks | awk ‘/Origfilename/ {print $2}’);do
if [ $i = $j ];then
existe=1
echo «existe»
fi
done
if [ $existe -eq 0 ];then
echo «Grabando $i»
mtp-sendfile $i Music/$i
fi
done

GESTION DE CARPETAS

mtp-folders Muestra lista de carpetas

Attempting to connect device(s)
Device 0 (VID=041e and PID=4161) is a Creative ZEN Mozaic.
mtp-folders: Successfully connected
Friendly name: paco aldarias
96 Music
2331 ACM Music
100 My Playlists
104 My Recordings

mtp-newfolder U2 96
El numero es la carpeta padre llamada Music

Administrador de archivos
Si queremos gestionarlo mediante el administrador de archivos, haremos:
sudo /sbin/modprobe fuse
mkdir $HOME/zen
mtpfs $HOME/zen
nautilus $HOME/zen

SCRIPT
zen.sh
Descargarlo y ejecutarlo con:
bash ./zen.sh

BIBLIOGRAFÍA.

  1. Linux Magazine. Número. 53. Artículo MTP en Linux. Página 25.

EXPORTAR DE WORDPRESS A BLOGSPOT


Tenemos articulos escritos en wordpress y queremos llevarlos a blogspot.

1. Ir a wordpress y exportar los articulos (en formato xml)

2. Subir a la web el archivo obtenido http://wordpress2blogger.appspot.com/
la cual os dará un archivo para importar con blogspot, llamado
blogger-export.xml

3. Ir a blogspot – configuración – importar y pasarle el achivo blogger-export.xml.

IPHONE RINGTONES

Los tonos del iphone son ficheros m4r.
Ejemplo: sms-iphone-sms.m4r

Podemos poner nuevos ringtones mediante ssh,
entrando en la carpeta /Library/Ringtones

Ejemplo:
sftp://root@169.254.15.240/Library/Ringtones