[Çözüldü] Terminal çıktılarını kaydetme

Başlatan Polarity, 08 Nisan 2010 - 17:10:13

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

Polarity

Merhaba arkadaşlar, terminalde bazı verdiğimiz komutların dökümünü, mesela programlar kurulurken, herhangi bi listeleme yapılırken, arama vs. gibi işlerde terminal ortamında görüyoruz ama bazı komutlar baya uzun oluyor neler dönmüş anlayamıyoruz. Hem terminal ortamında incelemeside zor oluyor.

Mesela, atıyorum;
dpkg -l
man apt-get
./configure

gibi herhangi bi konuda, komutu verdiğimiz andan işlem bitinceye kadar olan terminalde aşağı doğru akan bilgileri, komutun yanına herhangi bi ek komut ekleyerek gedit ortamına aktarabilirmiyiz?
Kişi başına düşen insan sayısı her geçen gün azalıyor.

Yiğit Ateş

ls -l > "dosyanın adı" && gedit "kaydedilecek dosyanın adı"

Polarity

olmadı listelemeyi gedit'in içine aktarmadı. yada ben yanlış anladım komutu. neden iki tane dosya ismi var hocam anlayamadım.
Kişi başına düşen insan sayısı her geçen gün azalıyor.

Yiğit Ateş

Birincisi uçbirimde verdiğin komut, ikincisi de oluşturulacak gedit dosyasının adı, buna göre mi yaptın?

hitokiri

mesela dpkg -l çıktısı evet dosyaya eklemek  şu şekildle örneğin ,
echo "  `dpkg -l `" > dosya
echo "yazılar için   "yaz"  komut için `ls |grep ubuntu` "


Polarity

teşekkürler ilgilendiğiniz için ama olmuyor her ikisinide denedim gedite aktarma yapamıyorum yazıları.
Kişi başına düşen insan sayısı her geçen gün azalıyor.

hitokiri

cd ; echo "  `dpkg -l `" > dosya  ; gedit dosya
kodu uygulayınca gedit penceresi gelmiyormu
cd ; echo " ee böyle de ekle yazısı dosyada yeni satırda olması lazım " >> dosya  ; gedit dosya
>> http://wiki.ubuntu-tr.net/index.php/Echo_Komutu_Kullan%C4%B1m%C4%B1

Polarity

tamamdır şimdi geldi hocam, peki aynı şeyi mesela şu komutta böyle uygulasak;
cd ; echo "`apt-get install program-adi`" > dosya  ; gedit dosya
olurmu dicem şimdi denedim böyle bi cevap geldi.

cd ; echo "`apt-get install program-adi`" > dosya  ; gedit dosya
E: /var/lib/dpkg/lock dosyası kilitli açılamıyor - open (13: Permission denied)
E: (/var/lib/dpkg/) yönetim dizinini kilitlenemiyor, yönetici misin?


hatta
E: /var/lib/dpkg/lock dosyası kilitli açılamıyor - open (13: Permission denied)
E: (/var/lib/dpkg/) yönetim dizinini kilitlenemiyor, yönetici misin?

bu yazının bile geditte açılmasını bekliyordum :)
Kişi başına düşen insan sayısı her geçen gün azalıyor.

hitokiri

Alıntı yapılan: Polarity - 08 Nisan 2010 - 18:01:00
tamamdır şimdi geldi hocam, peki aynı şeyi mesela şu komutta böyle uygulasak;
cd ; echo "`apt-get install program-adi`" > dosya  ; gedit dosya
olurmu dicem şimdi denedim böyle bi cevap geldi.

cd ; echo "`apt-get install program-adi`" > dosya  ; gedit dosya
E: /var/lib/dpkg/lock dosyası kilitli açılamıyor - open (13: Permission denied)
E: (/var/lib/dpkg/) yönetim dizinini kilitlenemiyor, yönetici misin?


hatta
E: /var/lib/dpkg/lock dosyası kilitli açılamıyor - open (13: Permission denied)
E: (/var/lib/dpkg/) yönetim dizinini kilitlenemiyor, yönetici misin?

bu yazının bile geditte açılmasını bekliyordum :)
E: o kadarda olsun artık aslında  @Yiğit Ateş'te güzel anlatmış kaçırmışın onuda :D
ls -l > dosya && gedit dosya
sudo su
ile root terminale düşersen yapabilirsin o işlemi
root@hitokiri-desktop:/home/hitokiri#  cd ; echo "`apt-get install program-adi`" > dosya  ; gedit dosya


Polarity

@Yiğit Ateş'in verdiğinide denemiştim yanlış yaptım sanırım. ilk dosya ve ikinci dosyanın adını farklı yazdım. evet oda oluyor.
ama herşeyde olmuyor sanırım aynen yapıştırdım kodu apt-get komutunda root olarak olmadı,

root@fatih-desktop:~# cd ; echo "`apt-get install program-adi`" > dosya  ; gedit dosya
E: program-adi paketi bulunamadı

(gedit:7870): Gtk-WARNING **: cannot open display:


yani bu kısım geditte açılmadı.
E: program-adi paketi bulunamadı

(gedit:7870): Gtk-WARNING **: cannot open display:

çok teşekkürler arkadaşlar.
Kişi başına düşen insan sayısı her geçen gün azalıyor.

hitokiri

sudo su ile root 'a geçtikten sonra kurulu bi paketi dene örneğin ;
cd ; echo "`apt-get install mplayer`" > dosya  ; gedit dosya
başka türlüsüde şöyle olabilir ama  böyle şeylere gerek yok zira işlemi takip etmek mümkün olmaz
cd ; echo "`apt-get install  -y smplayer`" > dosya  ; gedit dosya


Polarity

evet denedim hitokiri, komutu verinceboş satıra geçti hiç bişey çıkmadan bekledi uzun süre, arka planda mplayeri yüklemiş bu sefer terminal penceresinede akan yazılar gözükmeden yüklemiş tabi gedite aktarılamadı olan bitenler. yine şu yazı çıktı sadece:
root@fatih-desktop:~# cd ; echo "`apt-get install mplayer`" > dosya  ; gedit dosya
(gedit:8159): Gtk-WARNING **: cannot open display:


olsun mplayer yüklemiş oldum bende yeni programım oldu :)
Kişi başına düşen insan sayısı her geçen gün azalıyor.

hitokiri

bende ekledi gedit ile ilgili bi hata var gibi
dosyayı şöyle açabiliyormusun ,
sudo su
cd  ; nano  dosya

ironic

Bunun için kolay bir yol varmış. Komutu vermeden önce

script çıktının_kaydedileceği_yer/dosya_adı

Daha sonra vereceğimiz komutları çalıştırıyoruz işimiz bittikten sonra "exit"" ile kayıt işlemini sonlandırıyoruz.

Kullanım ayrıntısı için

man script


Kaynak : http://www.denraf.be/category/tagcloud/terminal-logging

Polarity

Alıntı yapılan: hitokiri - 08 Nisan 2010 - 18:38:59
bende ekledi gedit ile ilgili bi hata var gibi
dosyayı şöyle açabiliyormusun ,
sudo su
cd  ; nano  dosya


bu ilginmiş sanırım temp gibi bi yere kaydoldu "dosya" ismi verdiğimiz dosya bu nano komutu onu çalıştırdı. evet açıldı mplayerin yüklenirken çıktıları terminal penceresinde çıktı.

@ironic'in verdiği komutu denedim şimdi, çok basitmiş gerçekten oldu.
root@fatih-desktop:~# script /home/fatih/Programlar/deneme123
Betik başlatıldı, dosyası /home/fatih/Programlar/deneme123
root@fatih-desktop:~# apt-get install program-adi
Paket listeleri okunuyor... Bitti
Bağımlılık ağacı inşa ediliyor.       
Durum bilgisi okunuyor... Bitti       
E: program-adi paketi bulunamadı
root@fatih-desktop:~# exit
exit
Betik tamamlandı, dosyası /home/fatih/Programlar/deneme123
root@fatih-desktop:~#

gösterdiğim dizinde dosya oluşturmuş, terminaldede gözüküyor, kaydınıda yapıyor. ama dosyanın yetkilerini kısıtlamış ve tıklayınca türü bilinmiyor diyor, tabi onunda ayarı vardır muhakkak, uzantı falan koymak lazım belki, yada scripts komutunun opsiyonlarında vardır değişik seçenekler araştırmak lazım.
root@fatih-desktop:/home/fatih/Programlar# ls -l deneme123
-rw-r--r-- 1 root root 776 2010-04-08 18:55 deneme123

sanada teşekkürler ironic. baya rahatmış bu olay :)
Kişi başına düşen insan sayısı her geçen gün azalıyor.

heartsmagic

Farklı yolları var bu işin. echo'ya gerek kalmaz aslında. Ayrıca "gedit'e aktarmak" değil de bir dosyaya yazdırmak daha makul bir soru olurmuş :) Zira Gedit bir metin düzenleyici. Dediğim gibi farklı yolları var, bir tanesi örneğin şu olabilir:

falanca_komut 2>&1 | tee kayıt_edilecek_dosya

Fakat, @ironic'in önerisi gayet rahatmış. Ne var ne yok kayıt ediyormuş. Benim örneğimde ve hatta bu konudaki bir çok örnekte bu şekilde olmaz. Tek tek halletmen lazım çıktıları. @Polarity, erişim hakkı meselesini aşmak için root ile başlatma script uygulamasını. Başlatıp ardından sudo ile hallet işlerini.

script
sudo falanca felanca
exit
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.

hitokiri

Ben farkedememişim ama echo böyle de çalışıyor ,
echo "`sudo  apt-get install mplayer`" > dosya
Ama @ironic'in bahsettiği yöntem daha iyi , bu konuda hemfikiriz :)

heartsmagic

@hitokiri, bu şekilde hata iletileri basılmıyor ama dosyaya :)
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.

hitokiri

Alıntı Yap@hitokiri, bu şekilde hata iletileri basılmıyor ama dosyaya :)
Haklısın bende onu diyorum işte , "bu tee komutunu bi öğrenemedin be hitokiri" diye kenime  :)


Mesaj tekrarı yüzünden mesajınız birleştirildi. Bu mesajın gönderim tarihi : 08 Nisan 2010 - 21:43:38

Bu arada keramet
echo "`sudo  apt-get install asf 2>&1`" > dosya
Alıntı Yap2>&1
bunda imiş ne ifade eder kendisi ???

heartsmagic

Yönlendirme yapar kendisi. Google ile "redirtecting standar output and error" şeklinde bir arama bambaşka dünyalara götürür bizi :)
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.

Yiğit Ateş

Alıntı yapılan: heartsmagic - 08 Nisan 2010 - 22:06:48
Yönlendirme yapar kendisi. Google ile "redirtecting standar output and error" şeklinde bir arama bambaşka dünyalara götürür bizi :)
Türkçe konuşsanız da biz de anlasak :)


Ozmo

echo "  `dpkg -l `" > dosya  ; gedit dosya
bu şekilde de kayıt ediyor
echo "  `dpkg -l `" > dosya

hitokiri

Alıntı yapılan: hitokiri - 08 Nisan 2010 - 18:23:29
sudo su ile root 'a geçtikten sonra kurulu bi paketi dene örneğin ;
cd ; echo "`apt-get install mplayer`" > dosya  ; gedit dosya
başka türlüsüde şöyle olabilir ama  böyle şeylere gerek yok zira işlemi takip etmek mümkün olmaz
cd ; echo "`apt-get install  -y smplayer`" > dosya  ; gedit dosya


Orayı geçtik biz hata kayıtlarını da dosyaya geçsin istediğimiz için biraz konu genişledi :)

eribol

Bu konu arapça harflerle döşenmiş mübarek. Açıyorum ve kapatıyorum kaç defadır :).