0 Üye ve 1 Ziyaretçi Konuyu İncelemekte. Aşağı İn :)
Sayfa 1
Konu: Kabuk Betikleri  (Okunma Sayısı: 3288 Kere Okundu.)
« : Ocak 02, 2009, 03:12:05 ÖS »
Avatar Yok

Asortik Hatun
*
Üye No : 3762
Nerden : İzmir
Cinsiyet : Bayan
Konu Sayısı : 13388
Mesaj Sayısı : 22 841
Karizma = 58066


Bulunduğunuz dizindeki şarkı isimlerini ve mp3 tag-lerini değiştirmek;

İlk işimiz hangi dağıtımı kullanıyorsanız ona "eyeD3" programını kurmak. Ubuntu için;

"apt-get install eyeD3"

Daha sonra bulunduğunuz dizin ismini şarkıcının albümünün adı olduğunu varsayıyorum. Ve şu şekilde kabuk programımızı yazmaya başlıyoruz. Daha da okunabilir ve taşınabilir yapmak sizin elinizde



#!/bin/bash

simdiz=`pwd`
album=`basename "$simdiz"`

for i in *.mp3
do
sarki=${i#*-}
sarkici=${i%-*}
eyeD3 -A "$album" -a "$sarkici" -t "$sarki" "$i"
done

Otomatik USB Bellek Bağlamak

Linux’ta süreçlerin (process) birbirleriyle iletişimini sağlayan dbus diye bir program var. Bir de çekirdek (kernel) ile kullanıcı arasında donanımsal soyutlamayı sağlayan, yani kullanıcının harici bir giriş/çıkış cihazı rahatlıkla kullanabilmesi için sağlanan soyutlayıcı program da ‘Hal’dır. İşte, temelde bu iki programı kullanılarak, şu şekilde betikler yazılıp USB Bellek otomatik bağlanıyor

Kaynak gentoo-wiki’dir.



mount USB-Sticks

One can use the following rule to auto-mount usb sticks:

# mount block device when added
SUBSYSTEM=="block", ACTION=="add", RUN+="/usr/local/bin/mount-device.sh /dev/%k"

mount-device.sh

To do anything useful you need the script /usr/local/bin/mount-device.sh:

#!/bin/sh

DEVICE="$1"
GID=`grep plugdev /etc/group | cut -d: -f 3`

if [ "$DEVICE" = "" ] ; then exit 1 ; fi

# wait a moment till’ hal has information about the device

sleep 2

HAL_UDI=`hal-find-by-property --key block.device --string "$DEVICE"`

function get_hal_label {
CUR_UDI=$1
LABEL=""
COUNTER=0;
while [ -z "$LABEL" -a $COUNTER -lt 4 ]; do

LABEL=`hal-get-property --key volume.label --udi "$CUR_UDI" 2>/dev/null`
if [ -z "$LABEL" ]; then
LABEL=`hal-get-property --key storage.serial --udi "$CUR_UDI" 2>/dev/null`

fi
CUR_UDI=`hal-get-property --key info.parent --udi "$CUR_UDI" 2>/dev/null`
let COUNTER=COUNTER+1
done

if [ -z $LABEL ]; then
LABEL=${DEVICE##/dev/}
fi
}

function get_hal_removable {

CUR_UDI=$1
REMOVABLE=""
COUNTER=0
while [ -z "$REMOVABLE" -a $COUNTER -lt 4 ]; do
REMOVABLE=`hal-get-property --key storage.removable --udi "$CUR_UDI" 2>/dev/null`

if [ -z "$REMOVABLE" ]; then
BUS=`hal-get-property --key storage.bus --udi "$CUR_UDI" 2>/dev/null`
if [ "$BUS" = "usb" ]; then
REMOVABLE="true"

fi
fi
CUR_UDI=`hal-get-property --key info.parent --udi "$CUR_UDI" 2>/dev/null`
let COUNTER=COUNTER+1
done

if [ -z "$REMOVABLE" ]; then
logger "assuming $HAL_UDI is removable for safety reasons"

REMOVABLE="true"
fi
}

if [ -z "$HAL_UDI" ]; then # can’t find device in hal db
logger "hald didn’t know about $DEVICE"
LABEL=${DEVICE##/dev/}
else # device found in hal db.

get_hal_label "$HAL_UDI"
get_hal_removable "$HAL_UDI"
fi

logger "Mounting HAL_UDI $HAL_UDI as $DEVICE to $LABEL (removable: $REMOVABLE)"

SYNC_OPT=""


if [ $REMOVABLE = "true" ]; then
SYNC_OPT="--sync"
fi

pmount --umask 007 $SYNC_OPT "$DEVICE" "$LABEL"

# if you do not want to use pmount (why should you?)

#MOUNTPOINT=/media/${LABEL}
#mkdir -p "$MOUNTPOINT" &&
#touch "$MOUNTPOINT"/.created_by_pmount &&
#mount "$DEVICE" "$MOUNTPOINT" -o gid=$GID,umask=007 ||

#rm "$MOUNTPOINT"/.created_by_pmount &&
#rmdir "$MOUNTPOINT"

Aynı Paketin Çakışan Farklı Versiyonları

Gentoo’da bazen aynı paketin farklı versiyonları çakışır. Paket yöneticisi der ki; "ya bunu seç ya da diğerini ve bunu bana bildir. Yoksa amacına ulaştıramam seni! : ) ".

İşte örnek bir çıktı.



# emerge gnome-extra/gdesklets-core

’’’Calculating dependencies’’’
!!! all ebuilds that could satisfy "gnome-extra/gdesklets-core" have been masked.

!!! possible candidates are:
- gnome-extra/gdesklets-core-0.26 (masked by: ~keyword)
- gnome-extra/gdesklets-core-0.26.1 (masked by: ~keyword)
!!! Error calculating dependencies. Please correct.



Yapmamız gereken bu paketlerden birini seçip başına "~" işareti koyup, sonuna da "~amd64" (hangi mimaride derliyorsanız.) /etc/portage/package.keywords dosyasının sonuna yazmak.
Biraz artistik olsun diye bu çıktıyı şu şekilde bir dosyaya yazdırıyorum. Yazdırmasak da olur.

#$ emerge gnome-extra/gdesklets-core >cikti.txt

Sonra dosya üzerinde egrep ile arama yapıyorum. Paketi buluyorum. Ve gerekli dosyaya yönlendiriyorum.

yonlen=`egrep ’gdesklet.*0.26.1|0.26.1.*gdesklet’ cikti.txt | cut -d" " -f4`
echo "~$yonlen ~amd64">>/etc/portage/package.keywords

Bunu tek satır ile de halledebilirsiniz. Ama farklı özellikleri göstermek açısından bu şekilde yazmak daha yerinde olur diye düşündüm. Böyle basit ama kullanışlı çözümleri sıkça paylaşacağım. Yararlı olması dileğiyle.
Resimlerin Thumbnail-lerini oluşturan kabuk betiği
#!/bin/bash

# Komut satirindan girilen dosyalarin
# genisligi 150px olacak sekilde kucuk
# resimlerini(thumbnail) olusturan betik.
# Thumbnail yapilan dosyalar buyuk resim ile
# ayni path’te "thumb_orijinal_resi_adi.jpg"
# seklinde kaydedilir. Eger thumnail daha önceden
# yaratilmissa kullanicidan onay bekler.

BETIK=`basename $0`

if [ $# -eq 0 ]; then
echo "Kullanimi: $BETIK [,...]"
echo "Örnek: $BETIK resim1.jpg resim2.jpg"
echo "Örnek: $BETIK resim1.jpg klasor1/*"
exit
fi

PWD=`pwd`

for i in $*; do
IMAGE_NAME=`basename $i`
IMAGE_DIR=`dirname $i`
THUMB_NAME="thumb_${IMAGE_NAME}"

if [ -f ${IMAGE_DIR}/${THUMB_NAME} ]; then
ONAY=""
echo -n "Uyari: ${IMAGE_DIR}/${THUMB_NAME} zaten var, uzerine yazayim mi?[e/h,y/n]"
read ONAY
if [ "$ONAY" = "e" ] || [ "$ONAY" = "y" ]; then
echo "${IMAGE_DIR}/${IMAGE_NAME} --> ${IMAGE_DIR}/${THUMB_NAME}"
convert ${IMAGE_DIR}/${IMAGE_NAME} -scale 150 ${IMAGE_DIR}/${THUMB_NAME}
fi
continue
fi

echo "${IMAGE_DIR}/${IMAGE_NAME} --> ${IMAGE_DIR}/${THUMB_NAME}"
convert ${IMAGE_DIR}/${IMAGE_NAME} -scale 150 ${IMAGE_DIR}/${THUMB_NAME}
done
« Son Düzenleme: Mart 01, 2009, 09:13:38 ÖS Gönderen : Hipokondriyak »

WeBCaNaVaRi'na Üye Olmadan Link'leri ve Kod'ları Göremezsiniz.
Link'leri Görebilmek İçin. Üye Ol. veya Giriş Yap.
Üyelerimizden Destek Bekliyoruz.
WeBCaNaVaRi Botu

Bu Site Mükemmel :)

*****

Çevrimİçi Çevrimİçi

Mesajlar: 222 194


View Profile
Re: Kabuk Betikleri
« Posted on: Mart 28, 2024, 03:46:14 ÖS »

 
      Üye Olunuz.!
Merhaba Ziyaretçi. Öncelikle Sitemize Hoş Geldiniz. Ben WeBCaNaVaRi Botu Olarak, Siteden Daha Fazla Yararlanmanız İçin Üye Olmanızı ŞİDDETLE Öneririm. Unutmayın ki; Üyelik Ücretsizdir. :)

Giriş Yap.  Kayıt Ol.
Anahtar Kelimeler: Kabuk Betikleri e-book, Kabuk Betikleri programı, Kabuk Betikleri oyunları, Kabuk Betikleri e-kitap, Kabuk Betikleri download, Kabuk Betikleri hikayeleri, Kabuk Betikleri resimleri, Kabuk Betikleri haberleri, Kabuk Betikleri yükle, Kabuk Betikleri videosu, Kabuk Betikleri şarkı sözleri, Kabuk Betikleri msn, Kabuk Betikleri hileleri, Kabuk Betikleri scripti, Kabuk Betikleri filmi, Kabuk Betikleri ödevleri, Kabuk Betikleri yemek tarifleri, Kabuk Betikleri driverları, Kabuk Betikleri smf, Kabuk Betikleri gsm
Yanıtla #1
« : Ekim 08, 2012, 03:17:27 ÖS »

abra
*
Üye No : 76761
Nerden : Düzce
Cinsiyet : Bayan
Konu Sayısı : 213
Mesaj Sayısı : 1 182
Karizma = 30


Paylaşım İçin Teşekkürler.

Yanıtla #2
« : Ekim 08, 2012, 10:11:18 ÖS »
Avatar Yok

WhySoSerious
*
Üye No : 108119
Nerden : İstanbul
Cinsiyet : Bayan
Konu Sayısı : 116
Mesaj Sayısı : 872
Karizma = 1006


Teşekkürler


İnsanların çoğu kaybetmekten korktuğu için, sevmekten korkuyor.


Sevilmekten korkuyor, kendisini sevilmeye layık görmediği için.

Düşünmekten korkuyor, sorumluluk getireceği için.

Konuşmaktan korkuyor, eleştirilmekten korktuğu için.

Duygularını ifade etmekten korkuyor, reddedilmekten korktuğu için.

Yaşlanmaktan korkuyor, gençliğinin kıymetini bilmediği için.

Unutulmaktan korkuyor, dünyaya iyi birşey vermedigi için.

Ve ölmekten korkuyor aslında yaşamayı bilmediği için...


William Sheaskpeare
Yanıtla #3
« : Şubat 11, 2014, 08:47:21 ÖS »
Avatar Yok

excell2121
*
Üye No : 166949
Nerden : Yurt Dışı
Cinsiyet : Bay
Konu Sayısı : 0
Mesaj Sayısı : 13
Karizma = 0


Aralarindan en kolay ogrenileni bash olsa gerek Gülmek :)
Sayfa 1
Yukarı Çık :)
Gitmek istediğiniz yer:  



Theme: WeBCaNaVaRi 2011 Copyright 2011 Simple Machines SiteMap | Arsiv | Wap | imode | Konular