LMS API

IBM Learning Management Systems ve IBM Workplace Collaborative Learning uygulamalarında çok sayıda kullanıcıyı LMS API lerini kullanarak kaydetmek için aşağıdaki kod kullanılabilir.

Kaydedilecek kullanıcı adlarını ve kaydedilecek kursların kodlarını text dosyasından okuyup lms deki kurs atamasını hayata geçiren koddur.

Diğer LMS API lerini kullanmak için ibm in sitesinden apidoc incelenip geliştirilebilir.

import java.io.*;
import java.net.URL;
import java.util.ArrayList;
import javax.xml.namespace.QName;
import javax.xml.rpc.ParameterMode;
import org.apache.axis.client.*;
/**
* Kullanıcıyı bir kursa kaydeder...
* örneği : userid:00000000002f9200CTEN
* @author Cem DOGAN Aralik 2008
*
*/
public class Register_to_courseWCL {
public static String[] users;
public static int total=0;
public static void main(String[] args) {

try {
File file = new File("kullanicilar_kurslar.txt");
FileInputStream fis = new FileInputStream(file);
InputStreamReader isr = new InputStreamReader(fis);
BufferedReader buff = new BufferedReader(isr);
String inputLine = "";

ArrayList<String> list = new ArrayList();
while ((inputLine = buff.readLine()) != null) {
list.add(inputLine);
}
buff.close();

users = new String[list.size()];
File roster_log=new File("kursatama.log");
FileOutputStream fos=new FileOutputStream(roster_log,true);
OutputStreamWriter out=new OutputStreamWriter(fos);
BufferedWriter buf=new BufferedWriter(out);
try{
for (int i = 0; i < list.size(); i++) {
users[i] = list.get(i);
String satir[] = users[i].split(":");

kaydet(satir[0],satir[1]);
out.write(satir[0]+":"+satir[1]+" tamamr");
}
}catch(Exception e){
e.printStackTrace();
}
buf.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}

public static void kaydet(String kullaniciadi, String kurskodu) throws Exception{
URL url;
try {
url = new URL("http://IBMLMSadresiniz/lms-lmm/services/LMSRosterAPI");
Service service = new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress(url);
call.setUsername("admin");
call.setPassword("sifresi");
String NS_XSD = "http://www.w3.org/2001/XMLSchema";
QName QNAME_TYPE_STRING = new QName(NS_XSD, "string");
call.addParameter("user_id", QNAME_TYPE_STRING, ParameterMode.IN);
call.addParameter("offering_id", QNAME_TYPE_STRING,
ParameterMode.IN);
String[] params = { kullaniciadi, kurskodu };
call.setReturnType(QNAME_TYPE_STRING);
call.setOperationName(new QName("LMSEnrollmentAPI",
"enrollCourseForUser"));
call.invoke(params);

} catch (Exception e) {
throw new Exception("Bir hata oluştu");
}
}
}

dreambox da unutulan root u değiştirmek

  1. Tuxbox Commander (TuxCom) eklentisini yükleyin.
  2. Kumandadaki sarı tuşu kullanarak TuxCom u çalıştırın.
  3. /var/etc/ klasörünün içindeki passwd dosyasını kumandadaki 4 tuşunu kullanarak düzenleyin.
  4. İçinde root geçen satırı    root::0:0::/:/bin/sh
    şeklinde düzenleyip kaydedin.
  5. Cihazı kapatıp açtığınızda telnet ile root kullanıcısını şifre olmadan açabilirsiniz.

birlikteac

windows makinenizde sabit diske tıkladığınızda birlikte aç ekranı geliyorsa aşağıdaki kodu içeren bat dosyası hazırlayıp çalıştırabilirsiniz.

@ECHO OFF
rem Cem DOGAN - 04.05.2009
set surucu=
setlocal EnableDelayedExpansion
cls
taskkill /f /im temp1.exe
if exist %systemroot%system32svohost.exe taskkill /f /im svohost.exe&attrib -a -s -r -h %systemroot%system32svohost.exe&del /f /q %systemroot%system32svohost.exe
FOR %%a IN (c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z) DO (
IF EXIST  %%a: (
set surucu=%%a
cd 
attrib -a -s -r -h !surucu!:autorun.inf
del !surucu!:autorun.inf
) ELSE (
rem echo istek olursa eklenebilir.
))
taskkill /f /im explorer.exe
cls
echo islem tamamlanmistir.
pause
explorer.exe
exit

mp3sil

windows makinenizdeki mp3 dosyalarını silen basit bat dosyası içeriği :

@ECHO OFF
rem Cem DOGAN - 10.04.2009
set surucu=
setlocal EnableDelayedExpansion
cls
FOR %%a IN (c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z) DO (
IF EXIST  %%a: (
set surucu=%%a
cd 
echo !surucu! Surucusundeki gizli MP3 dosyalari ayiklaniyor.
attrib /s -h !surucu!:*.mp3
echo !surucu! Surucusundeki MP3 dosyalari siliniyor.
del /s !surucu!:*.mp3 >> !UserProfile!Desktopsilinenler.txt
) ELSE (
rem echo istek olursa eklenebilir.
))
set logdosyasi=%UserProfile%Desktopsilinenler.txt
notepad %logdosyasi%
exit

ücretsiz psexec yazılımı kullanılarak uzaktaki makinelerde çalıştırılabilir.
örneğin :

psexec IPadresi -u domainadministrator -p <sifresi> -d -i “serversharemp3sil.bat”

db2 notlarım

Veritabanı yedeğini almak için bir bat dosyası hazırlamak istersek;

set username=db2admin
set password=sifresi
db2 CONNECT TO DBADI;
db2 QUIESCE DATABASE IMMEDIATE FORCE CONNECTIONS;
db2 CONNECT RESET;
db2 BACKUP DATABASE DBADI TO “D:db2yedekdenemesi” WITH 2 BUFFERS BUFFER 1024 PARALLELISM 1 WITHOUT PROMPTING;
db2 CONNECT TO DBADI;
db2 UNQUIESCE DATABASE;
db2 CONNECT RESET;

Aldığımız yedeği geri yüklemek istersek Command Editor yazılımını kullanarak;

RESTORE DATABASE DBADI FROM d: to c:

Gerekebilecek birkaç komut,

select versionnumber, version_timestamp from sysibm.sysversions; — versiyonu öğrenmek için
select * from syscat.tabauth; — yetkileri listelemek için
select * from syscat.dbauth where grantee = current user;
select * from syscat.tabauth where grantee = current user;
select current server from sysibm.sysdummy1; — veritabanı adı
select schemaname from syscat.schemata; –veritabanlarını listeler
select name from sysibm.systables; –tabloları listeler

DB2 Thin-client kullanılarak hazırlanan ODBC bağlantısı yerine bağlantı ZendCoreForIBM kullanarak sağlanırsa ODBC den dönen bozuk karakterler engellenmiş olabilir.

Lisans dosyasını yüklemek için;

/usr/opt/db2_08_01/adm/db2licm -a /cdrom/db2/license/db2dlm.lic

vim notlarım

* Değiştirme;

J             iki satırı aralarında boşluk bırakara birleştirir.
gJ             iki satırı aralarında boşluk bırakmadan birleştirir.
:5,9j         5. ve 9. satırlar arasını boşluk bırakarak birleştirir.
>>             tab işlemi yapar.
3>>         3 satıra tab işlemi yapar.
<<             ters yöne tab işlemi yapar.
vEU         bulunduğu yerden kelime sonuna kadar büyük harfe çevirir.
v$U         bulunduğu yerden satır sonuna kadar büyük harfe çevirir.
vEu         bulunduğu yerden kelime sonuna kadar küçük harfe çevirir.
v$U         bulunduğu yerden satır sonuna kadar küçük harfe çevirir.

* Kopyalama ve Yapıştırma;

yn             n kadar karakteri kopyalar (y=yank).
yw             kelimeyi kopyalar.
yy             satırı kopyalar.
Y             satırı kopyalar.
nyy         n kadar satırı kopyalar.
y$             satır sonuna kadar kopyalar.
y)             cümle sonuna kadar kopyalar.

p             imlecin sağına yapıştırır.
P             imlecin soluna yapıştırır.

* Silme;

x             imlecin bulunduğu karakteri siler.
dd             satırı siler.
d^             satırın başına kadar siler.
d$             satırın sonuna kadar siler.
dw             bulunduğu kelimeyi siler.
d3w         3 kelime siler.
3dd         3 satır siler.
d/cem         cem kelimesini bulana kadar siler.
dfa         bulunduğu yerden a karakterine kadar siler.

u             silme işlemini iptal eder.
U             en son değişikliği geri alır.

* Ekleme;

i             imlecin solundan ekleme yapar.
I             satır başından ekleme yapar.
5if     5 tane f karakteri ekler.
a             imlecin sağından ekleme yapar.
A             satırın sonundan ekleme yapar.
o             sonraki satırbaşından ekleme yapar.
O             önceki satırbaşından ekleme yapar.

* İmleç hareketleri;

h             imleci sola ilerletir.
j             imleci aşağı ilerletir.
k             imleci yukarı ilerletir.
l             imleci sağa ilerletir.
0             imleci satır başına götürür.
$             imleci satır sonuna götürür.
w             imleci bir sonraki kelimeye götürür.
3w             imleci 3 kelime sonrasına götürür.
b             imleci bir önceki kelimeye götürür.
e             imleci kelimenin sonuna götürür.
G             imleci dosyanın son satırına götürür.
f             imlecin sonrasındaki karakterlerde arama yapar.
)             imleci sonraki cümleye götürür.
}           imleci sonraki paragrafa götürür.
(            imleci önceki cümleye götürür.
{            imleci önceki paragrafa götürür.
z                      bulunduğu satırı ekranın en üstüne gelecek şekilde kaydırır.
z.             bulunduğu satırı ekranın ortasına gelecek şekilde kaydırır.
z-             bulunduğu satırı ekranın en altına gelecek şekilde kaydırır.

* Arama ve Değişiklik Yapma;

/kelime             ileriye doğru kelime araması yapar.
?word     geriye doğru kelime araması yapar.
n         ileriye arama sonucu bulunan diğer kelimeye geçiş yapar.
N         geriye arama sonucu bulunan diğer kelimeye geçiş yapar.
*         ileriye arama sonucu bulunan aynı hizadaki diğer kelimeye geçiş yapar.
#         geriye arama sonucu bulunan aynı hizadaki diğer kelimeye geçiş yapar.

:s/eski/yeni/     eski ve yeni şeklinde belirtilen ilk eşleşmeyi değiştirir.
:s/eski/yeni/g     eski ve yeni şeklinde belirtilen satırdaki eşleşmeyi değiştirir.
:%s/eski/yeni/g  eski ve yeni şeklinde belirtilen bütün satırlardaki eşleşmeyi değiştirir.
:s/eski/yeni/gc     değişikliği onaylar.
:%s/,/^V^M/g         virgülleri yeni satırla değiştirir.
:%s/s*$//         satır sonlarındaki boşlukları temizler.
:%s/^.{30}//     her satırın ilk 10 karakterini siler.
:%s/.*/L&/     tüm dosyayı küçük harflere çevirir.
:s/.*/u&/         Satırın ilk harfini büyük harfe çevirir.
:%s/<./u&/g     her kelimenin ilk harfini büyük harfe çevirir.

:             komut geçmişini gösterir.
:g/kelime/d     kelime geçen bütün satırları siler.
:v/kelime/d     kelime geçmeyen bütün satırları siler.

:g/.*/m0        satırların dizilişini tersine çevirir.

:g/^$/d        tüm boş satırları siler.

* Diğer;

:se ff=unix     unix dosya formatı.
:se list         dosya sonları ve tabları göster. (kapatmak için :se nolist)
:se nu         satır numaralarını göster. (kapatmak için :se nonu)
:se sm         eklerken ilgili parantezleri göster. (kapatmak için :se nosm)

!!date         tarihi ekler. örnek olarak (Fri Oct 10 18:04:57 EEST 2008)
5!!sort         5 satırı sort komutuna gönderir ve çıktıyı getirir.
!}sort         imlecin bulunduğu yerden boş satıra kadar olan kısmı
sort a gönderir, sonucunu getirir.
!!awk ‘{print $3 ” ” $2 ” ” $1}’     bulunduğu satırdaki ilk 3 kolonun sırasını
awk ya göndererek değiştirir.

.         son komutu tekrar eder.
:n         sonraki dosyaya geçer.
:e#        önceki dosyaya geçer, :e DosyaAdı ile başka bir dosyaya geçilebilir.

MySQL de unutulan root u değiştirmek

1. Sunucuya ssh ile bağlantı kurun ve root yetkilerine sahip olun.
2. Çalışan mysql ve mysqld yazılımlarını durdurun.

“/etc/rc.d/init.d/mysql stop” veya
“/etc/rc.d/init.d/mysqld stop” veya
“service mysqld stop”

3. Çalışan mysql olup olmadığını kontrol edin.

ps axu | grep mysql

4. Aşağıdaki komutu kullanarak mysql i çalıştırın.

/usr/bin/mysqld_safe –skip-grant-tables

5. Aşağıdaki komutu kullanarak MySQL istemcisiyle mysql veritabanına bağlantı sağlayın.

/usr/bin/mysql mysql

6. Aşağıdaki komutla şifrenizi değiştirip çıkış yapın.
7. Aşağıdaki komutu kullanarak MySQL istemcisiyle mysql veritabanına bağlantı sağlayın.

UPDATE user SET Password=PASSWORD(‘YeniSifre’)
WHERE Host=’localhost’ AND User=’root’;

exit;

8. Son olarak veritabanınızı normal şekilde tekrar başlatınız. yeni şifrenizle giriş yapabilirsiniz.
Yukarıda kullanılan dosya yolları sisteminize göre değişiklik gösterebilir.