› Foros › PC › Software libre
#!/bin/bash
if [ -f $1 ] ; then
case $1 in
*.tar.bz2) tar xjf $1 ;;
*.tar.gz) tar xzf $1 ;;
*.bz2) bunzip2 $1 ;;
*.rar) rar x $1 ;;
*.gz) gunzip $1 ;;
*.tar) tar xf $1 ;;
*.tbz2) tar xjf $1 ;;
*.tgz) tar xzf $1 ;;
*.zip) unzip $1 ;;
*.Z) uncompress $1 ;;
*.7z) 7z x $1 ;;
*) echo "'$1' No se puede extraer." ;;
esac
else
echo "'$1' No es un fichero válido."
fi
#!/bin/bash
if [ $(whoami) = "root" ]; then
case "$1" in
start|stop|restart)
/etc/rc.d/noip $1
/etc/rc.d/sshd $1
/etc/rc.d/pure-ftpd $1
;;
*)
echo "uso: $0 {start|stop|restart}"
esac
else
echo "Se necesitan permisos de root para proceder"
fi
amuchamu escribió:Descomprimir
Descomprime los formatos más comunes. Bastante fácil de modificar. Lo encontré en algún foro de Arch (no recuerdo en cual) hace unos meses y lo modifiqué un poquillo, casi nada.
Uso: $ descomprimir fichero#!/bin/bash
if [ -f $1 ] ; then
case $1 in
*.tar.bz2) tar xjf $1 ;;
*.tar.gz) tar xzf $1 ;;
*.bz2) bunzip2 $1 ;;
*.rar) rar x $1 ;;
*.gz) gunzip $1 ;;
*.tar) tar xf $1 ;;
*.tbz2) tar xjf $1 ;;
*.tgz) tar xzf $1 ;;
*.zip) unzip $1 ;;
*.Z) uncompress $1 ;;
*.7z) 7z x $1 ;;
*) echo "'$1' No se puede extraer." ;;
esac
else
echo "'$1' No es un fichero válido."
fi
zootropo escribió:O puedes instalar unp o usar el propio file-roller:
http://mundogeek.net/archivos/2007/06/2 ... -en-linux/
#!/bin/bash
clear
# archivo 1
if [ "$1" != "" ]; then
echo -e "\033[0;31m Descargando $1 \033[0m"
wget ${1}
echo -e "\033[0;33m $1 finalizado \033[0m"
echo -e "\033[0;34m ------------------------------------------------ \033[0m"
echo
fi &&
# archivo 2
if [ "$2" != "" ]; then
echo -e "\033[0;31m Descargando $2 \033[0m"
wget $2
echo -e "\033[0;33m $2 finalizado \033[0m"
echo -e "\033[0;34m ------------------------------------------------ \033[0m"
echo
fi &&
# archivo 3
if [ "$3" != "" ]; then
echo -e "\033[0;31m Descargando $3 \033[0m"
wget $3
echo -e "\033[0;33m $3 finalizado \033[0m"
echo -e "\033[0;34m ------------------------------------------------ \033[0m"
echo
fi &&
# etc etc etc, tantos archivos como quieras
#!/bin/bash
FILE=$(zenity --entry --title="nueva descarga" --text="escribe o pega la url del archivo a bajar") || exit
if [ $FILE ]; then
DIR=$(zenity --file-selection --directory --title="selecciona dónde guardar el archivo") || exit
wget $FILE --tries=0 --directory-prefix=$DIR
notify-send -t 7500 "Descarga Terminada" "Vea la salida del terminal para comprobar el exito de la descarga"
else
zenity --error --text="\nNo se ha especificado url de descarga"
fi
#!/bin/bash
while [ $(egrep "remaining" /proc/acpi/battery/BAT1/state | tr -s [:blank:] "-") != "remaining-capacity:-288-mAh" ]
do
sleep 30
done
if [ $(egrep "charging" /proc/acpi/battery/BAT1/state | tr -s [:blank:] "-") != "charging-state:-charging" ]
then
zenity --warning --title="eh tu, tio elegante" --text="Bateria al 6% de capacidad.\n\n\nVenga tio, curratelo con el enchufe."
fi
amuchamu escribió:zootropo escribió:O puedes instalar unp o usar el propio file-roller:
http://mundogeek.net/archivos/2007/06/2 ... -en-linux/
Hombre, eso ya lo sé... El objetivo de este hilo no era ése.
Yo he encontrado una página con un montón de scrips para nautilus que hacen de todo.
Aquí el enlace - http://nautilus-scripts.javielinux.com/ - y aquí un pack que va dentro de "/home/nombre de usuario/.gnome2/nautilus-scripts - http://nautilus-scripts.javielinux.com/ ... pts.tar.gz -
No sé si será esto de lo que va el post, si no lo es lo siento.
¿Por qué no? Más complejo no siempre es mejor, que tú lo digas tampoco lo hace mejor, ni el que lo hayas puesto en tu blog. Dudo que esté en los repositorios de todas las distribuciones porque, por ejemplo, en Arch no está y habría que tirar de aur (lo cual tampoco es mucho problema). Y hay gente a la que le gusta aprender cómo funcionan estas cosas, para hacerse los suyos propios, modificarlos, mejorarlos... También hay gente a la que le gusta usar programillas o scripts hechos por uno mismo aunque haya un programa que hasta te cante jotas y haga lo mismo, porque queremos algo funcional o nos hace "ilu" haberlo hecho.zootropo escribió:¿Y para qué van a usar ese script cuando ya tienen una herramienta instalada en el sistema o en los repositorios que hace eso, y mejor?
jorchube escribió:#!/bin/bash
clear
# archivo 1
if [ "$1" != "" ]; then
echo -e "\033[0;31m Descargando $1 \033[0m"
wget ${1}
echo -e "\033[0;33m $1 finalizado \033[0m"
echo -e "\033[0;34m ------------------------------------------------ \033[0m"
echo
fi &&
# archivo 2
if [ "$2" != "" ]; then
echo -e "\033[0;31m Descargando $2 \033[0m"
wget $2
echo -e "\033[0;33m $2 finalizado \033[0m"
echo -e "\033[0;34m ------------------------------------------------ \033[0m"
echo
fi &&
# archivo 3
if [ "$3" != "" ]; then
echo -e "\033[0;31m Descargando $3 \033[0m"
wget $3
echo -e "\033[0;33m $3 finalizado \033[0m"
echo -e "\033[0;34m ------------------------------------------------ \033[0m"
echo
fi &&
# etc etc etc, tantos archivos como quieras
este simplemente es un wget, en plan bajar mas de una cosa por comando
$comando file1 file2 file3 file4... etc
lo he recortado para que no ocupe toda la pagina(tal cual esta, solo serviria para 3 downloads o menos... pero vamos es añadir mas "modulos" para aumentar el limite.
no son descargas simultaneas, sino consecutivas.
for i in $*; do
echo -e "\033[0;31m Descargando $i \033[0m"
wget $i
echo -e "\033[0;33m $i finalizado \033[0m"
echo -e "\033[0;34m ------------------------------------------------ \033[0m"
echo
done
amuchamu escribió:¿Por qué no? Más complejo no siempre es mejor, que tú lo digas tampoco lo hace mejor, ni el que lo hayas puesto en tu blog.zootropo escribió:¿Y para qué van a usar ese script cuando ya tienen una herramienta instalada en el sistema o en los repositorios que hace eso, y mejor?
Dudo que esté en los repositorios de todas las distribuciones porque, por ejemplo, en Arch no está y habría que tirar de aur (lo cual tampoco es mucho problema).
Y hay gente a la que le gusta aprender cómo funcionan estas cosas, para hacerse los suyos propios, modificarlos, mejorarlos... También hay gente a la que le gusta usar programillas o scripts hechos por uno mismo aunque haya un programa que hasta te cante jotas y haga lo mismo, porque queremos algo funcional o nos hace "ilu" haberlo hecho.
Solo una cosa, no es por meter candela, pero "unp" no es ya un script? si hace lo que hace y lo hace bien, siempre se puede recortar para ajustarlo a las necesidades de cada uno, o coger ideas para mejorarlo y fies no? pensaba precisamente que una de las ideas del software libre, es que la competición es inútil frente a la colaboración.
Paz hermanos, pensad en lo que la barba de Richard Stallman haría en ésta situación.
Tú has preguntado y yo he respondido :S Ya te he dicho que no quería seguir por ahí, así que no te respondo lo demás. Saludoszootropo escribió:De verdad que no veo qué problema tienes con mi sugerencia.
#!/bin/bash
# Bash color functions 0.1
# Have bugs, I know... WIP!
# Created by Pyronhell (http://www.pyronhell.com)
# License: CC Attribution-Noncommercial-Share Alike 2.5
# http://creativecommons.org/licenses/by-nc-sa/2.5/es/deed.en
# Init some vars...
TEXTCOLOR=0
TEXTMODE=0
TEXTBG=0
# Modes...
BOLD=1
STROCKED=9
UNDERLINE=4
# Colors...
BLACK=39
BLUE=34
CYAN=36
GRAY=30
GREEN=32
PURPLE=35
RED=31
WHITE=37
YELLOW=33
# textDefault
# Sets textcolor, mode and background to its defaults
function textDefault {
echo -ne "\033[0m"
echo -ne "\033["${BLACK}"m"
echo -e "\033[1A";
echo -ne "\033[K"
TEXTCOLOR=0
TEXTMODE=0
TEXTBG=0
}
# textMode [-r] $1
# $1 -> Mode (avobe) [$BOLD/$UNDERLINE/$STROCKED]
# param:
# -r -> Replace all prev modes (unactive all) and only
# active the new mode.
# -d -> Remove all set modes
function textMode {
if [ "$1" == "-r" ]; then
echo -ne "\033[0;"${TEXTCOLOR}"m"
echo -ne "\033["$2";"${TEXTCOLOR}"m"
TEXTMODE=$2
elif [ "$1" == "-d" ]; then
echo -ne "\033[0;"${TEXTCOLOR}"m"
TEXTMODE=0
else
echo -ne "\033["$1";"${TEXTCOLOR}"m"
TEXTMODE=$1
fi
}
# textColor $1 [$2]
# $1 -> Color variable (avobe) for text color
# $2 -> Color variable (avobe) for background color [Optional]
function textColor {
if [ $2 > 39 ]; then
echo -ne "\033["${TEXTMODE}";"`expr $2 + 10`"m"
echo -ne "\033[K\r"
#echo -ne "\033[1A"
TEXTBG=$2
elif [ $TEXTBG > 0 ]; then
echo -ne "\033["${TEXTMODE}";"`expr ${TEXTBG} + 10`"m"
echo -ne "\033[K\r"
#echo -ne "\033[1A"
fi
echo -ne "\033["${TEXTMODE}";"$1"m"
TEXTCOLOR=$1
}
## SOME EXAMPLES ##
echo Hello...
textColor $RED # Set text red
echo Wow! Now im red!
textMode $BOLD # Set text bold
echo By the power of greyskull!!
textColor $PURPLE # Set text yellow
echo Im gay
textColor $PURPLE $PURPLE # Set text purple and bg purple
echo T_T
textMode $UNDERLINE # Add mode underlined
textColor $WHITE $BLACK # Text: white | Bg: Black
echo Now im clean!
textMode -d # Delete text modes
echo Finish em! # Not really...
textDefault
textColor $CYAN $YELLOW # DO NOT WORK!
echo "More colors? (TODO)"
textMode $UNDERLINE
echo "Yay! (Yay... what?) (TODO)"
textDefault
echo "Leaving... (it may be better...)"
#!/bin/bash
#
# This script gets data from RRD database and generates a report
#
# Usage:
# report.sh date_start date_end database_name path_to_rrd_database
#
# While:
# date_start = "hh:mm DD/MM/YYYY"
# date_end = "hh:mm DD/MM/YYYY"
# database_name = ds_name
# path_to_rrd_database = /data/rrd/...
#
# Exit:
# "$BBDD $PARAM ($START-$END) = $RESULT
#
# While:
# BBDD = Database (memory, rta, cpu,...)
# PARAM = average, max
# START = "hh:mm DD/MM/YYYY"
# END = "hh:mm DD/MM/YYYY"
#
usage()
{
echo "Usage:"
echo "$0 \"dd/mm/yyyy HH:MM:ss\" \"dd/mm/yyyy HH:MM:ss\" database_name path_to_rrd_database [avr|max]"
echo ""
exit
}
if [ $# -lt 5 ]
then
echo "Wrong number of params."
usage
fi
START=`date +%s -d "$1"`
END=`date +%s -d "$2"`
BBDD=$3
RRD=$4
PARAM=$5
if [ ! -f $RRD ]
then
echo "$RRD is not a file"
usage
fi
case $PARAM in
"avr")
AVERAGE=`rrdtool graph /dev/null -s $START -e $END DEF:nombre=$RRD:$BBDD:AVERAGE PRINT:nombre:AVERAGE:%lf | tail -n1`
echo "Average $BBDD ($1 - $2) $AVERAGE"
exit
;;
"max")
MAX=`rrdtool graph /dev/null -s $START -e $END DEF:nombre=$RRD:$BBDD:AVERAGE PRINT:nombre:MAX:%lf | tail -n1`
echo "Max $BBDD ($1 - $2) $MAX"
exit
;;
esac
#!/bin/bash
gdialog --title "XBOX360Burner" --msgbox "Grabando" & growisofs -use-the-force-luke=dao -use-the-force-luke=break:1913760 -dvd-compat -speed=4 -Z /dev/scd0=~/Escritorio/$1 && eject && gdialog --title "XBOX360Burner" --msgbox "Grabacion Terminada"
#!/bin/bash
rar x $1 ~/Escritorio/ && gdialog --title "UNRARDESKTOP" --msgbox "Descomprimido"
#! /bin/sh
echo Renombrando archivos.....
for i in *
do
if test -d $i
then
rar rn $i/*.rar *.avi $i.avi
fi
done
echo Descomprimiendo archivos.....
for i in *
do
if test -d $i
then
rar x $i/*.rar
fi
done
#echo Borrando directorios.....
#for i in *
#do
# if test -d $i
# then
# rm -r $i
# fi
#done
echo Terminado OK