UNIX İşletim Sisteminde motd değerini değiştirin


3

Bir komut dosyası kullanarak MOTD'nin değerini değiştirmem gerekiyor, ancak nasıl başlamam gerektiğini bilmiyorum. Örnek MOTD'yi ekliyorum.

           görüntü tanımını buraya girin


1
Hangi unix varyantı (örneğin Linux'ta hangi dağıtım)?
Gilles,

Yanıtlar:


3

Örneğinizde gösterdiğiniz tarzda bir MOTD oluşturmak için büyük olasılıkla bu bannerkomutu kullanmak isteyeceksiniz . Sen den o çıktıyı besleyebilir hostnamesunucunuzun adının güzel afiş almak için komutu.

Bunu MOTD'niz yapmak için, bu komuttan çıktıyı /etc/motdMOTD'yi görüntülemek için kullanılan dosyaya yönlendirmek isteyeceksiniz .

$ ...cmd... > /etc/motd

NOT: Aşağıda göstereceğim komutlar değiştirilebilir ...cmd....

Örnek

$ banner $(hostname)

 #####   ######   #######  #######  #     #  #######   #####    #####   
#     #  #     #  #        #        ##    #  #        #     #  #     #  
#        #     #  #        #        # #   #  #        #        #        
#  ####  ######   #####    #####    #  #  #  #####    #  ####  #  ####  
#     #  #   #    #        #        #   # #  #        #     #  #     #  
#     #  #    #   #        #        #    ##  #        #     #  #     #  
 #####   #     #  #######  #######  #     #  #######   #####    #####   

Bu tek gömlek size neredeyse istediğinizi verecek:

$ (banner "server"; \
    printf "Hostname: %s\nDate    : %s\nUptime  :%s\n\n", \
    "$(hostname -s)" "$(date)" "$(uptime)")

 #####   #######  ######   #     #  #######  ######   
#     #  #        #     #  #     #  #        #     #  
#        #        #     #  #     #  #        #     #  
 #####   #####    ######   #     #  #####    ######   
      #  #        #   #     #   #   #        #   #    
#     #  #        #    #     # #    #        #    #   
 #####   #######  #     #     #     #######  #     #  

Hostname: greeneggs
Date    : Thu Apr 24 22:39:23 EDT 2014
Uptime  : 22:39:23 up 3 days,  8:34,  6 users,  load average: 0.80, 1.06, 1.49

Baskı kutuları

bannerBaşlık metnini yazdırmak için komut satırı aracını kullanmaya ek olarak , boxesisteğe bağlı bir metnin çevresine bir kutu sarmak için çağrılan başka bir yardımcı araç kullanabilirsiniz .

$ boxes -d shell -p a1l2 <(hostname -s)
##############
#            #
#  greeneggs #
#            #
##############

Bu yaklaşımı kullanabilir ve istediğinizi yapmak için büyütebiliriz:

$ boxes -d shell -p a1l2 \
    <(banner "server"; \
        printf "Hostname: %s\nDate    : %s\nUptime  :%s\n" \
        "$(hostname -s)" "$(date)" "$(uptime)")
###################################################################################
#                                                                                 #
#                                                                                 #
#   #####   #######  ######   #     #  #######  ######                            #
#  #     #  #        #     #  #     #  #        #     #                           #
#  #        #        #     #  #     #  #        #     #                           #
#   #####   #####    ######   #     #  #####    ######                            #
#        #  #        #   #     #   #   #        #   #                             #
#  #     #  #        #    #     # #    #        #    #                            #
#   #####   #######  #     #     #     #######  #     #                           #
#                                                                                 #
#  Hostname: greeneggs                                                            #
#  Date    : Thu Apr 24 22:54:09 EDT 2014                                         #
#  Uptime  : 22:54:09 up 3 days,  8:49,  6 users,  load average: 0.63, 0.81, 1.09 #
#                                                                                 #
###################################################################################

Merhaba slm, teşekkürler, çalışıyor, ancak kutu aracı yok, aix'te kullanabileceğim bir şey var mı? Çok teşekkürler
Batil

@zieggy - fikrim yok. Kutuları yerleştirirdim ya da kendim bir kutu kendim yapardım ve içindeki içerikleri basardım.
slm

teşekkürler, genellikle endişeme cevap veriyor, kutuları nasıl yapabilirim kontrol etmeye çalışacağım!
batil

Bu dinamik mi? Bir kullanıcı her giriş yaptığında çıktı değişecek mi?
GC 13

@ GC13 - Hayır, tarih ve çalışma zamanı vb. Yukarıdaki komut her çalıştırıldığında ve / etc / motd dosyasına yazıldığında değişir. Bu dosyanın periyodik olarak güncellenmesini istiyorsanız bir cron işi oluşturmanız gerekir.
slm

1

Dinamik MOTD oluşturmak istiyorsanız, güncel kılavuza göz atın

https://ownyourbits.com/2017/04/05/customize-your-motd-login-message-in-debian-and-ubuntu/

Temelde, zorunda

1) /etc/update-motd.d dosyasını oluşturun.

2) betiğinizi oraya yerleştirin


1
Lütfen 'bu bağlantıyı kontrol et' ile cevap verme. Tüm gerekli adımları ayrıntılı olarak açıklayan cevabı kendi kendine yapmayı deneyin. O zaman sonunda bir kaynak için bir link bırakın.
ddnomad

0

motdsadece bir dosyadır. Kimden man motd:

NAME
       motd - message of the day

DESCRIPTION
       The  contents  of  /etc/motd  are  displayed by login(1) after a successful
       login but just before it executes the login shell.

      The abbreviation "motd" stands for "message of the day", and this file has
      been traditionally used for exactly that (it requires much less disk space
      than mail to all users).

FILES
      /etc/motd

Bir senaryo bakış açısı olarak, bu kadar basit bir şey yeterli olacaktır:

#!/bin/sh
printf "     Welcome to $(hostname -s)\n\n" > /etc/motd

Merhaba Ouki, teşekkürler, ama bir betiği kullanarak motdın içeriğini değiştirmek istedim, "SUNUCU" başlıklı kelimesinin lpar'ın HOSTNAME olması gerektiğini söylemeyi unuttum.
batil

Daha dinamik motdmesajlar işletim sistemine bağlıdır. İşletim sisteminiz / dağıtımınız nedir?
Ouki,

Merhaba, benim işletim 7.1
sistemim

Ana bilgisayar adının başlık olmasını nasıl sağlayabilirim?
batil
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.