UNIX $ (dolar) komut isteminin kaynağı nedir?


83

UNIX bilgi istemi $, girişinizin beklendiğini belirtmek için bir sembol kullanır .

Bir neden varsa, bu sembolün neden seçildiğini merak ediyordum. Dolar sadece biraz beklenmedik görünüyor. Bir >simge bence daha anlamlı olurdu.


3
Programlama ile ilgili olmasa da, kesinlikle bilgisayarla ilgili olsa da Süper Kullanıcı'da daha iyi olduğunu düşünüyorum.
Joey,

Ben de cevabı bilmek istiyorum. SU üzerinde arayacağım.
Gabriel Hurley

24
Bourne kabuğu istemi, Unix istemi değil. Varsayılan csh istemi% 'dir.
wfaulk

1
wfaulk, Keşke yorumunuzu bir kereden fazla yenileyebilseydim.
Richie Marquez

18
€ henüz yoktu ...
mouviciel

Yanıtlar:


59

Hadi biraz keşfedelim:

  • Sürüm 8 Unix kolaydır. Hala erkek sayfaları var. Get sh adam sayfası ve istemi arayın. Okuduğunuz bir noktaya ulaşırsınız:

    PS1 Birincil bilgi istemi dizesi, varsayılan olarak “$”.

    PS2 İkincil bilgi istemi dizgisi, varsayılan olarak “>”.

  • Öyleyse bakalım, o ilk miydi? Sürüm 7 Unix man sayfaları hala mevcuttur ve adam sayfası Version 8 olarak ister aynı açıklamasını verir.sh

  • Peki ya sürüm 6? Versiyon 6 Unix'i izlemek zor değildi. Ama onun sh adam sayfası hiç istemleri söz etmez. “Başlarken” kılavuzu burada oldukça kullanışlı; o bahseder :

    Giriş çalışmalarınızın doruk noktası “%” işaretinin yüzde işaretidir. Yüzde işareti, UNIX'in terminalden komutları kabul etmeye hazır olduğu anlamına gelir.

Aha! Yani sürüm 6 sahip değildi. İlk sürüm 7 oldu! 1979'da yayınlandı.

Mutlu? Geçit töreninde yağmur yağmaktan nefret ediyorum, ama olma :)

Sorun şu ki sürüm 6 bir ilham verici Unix idi. Buradaki değişkenlere bakın . Komut istemi olarak $ işaretinin Sürüm 7'de başlatılmadığı, bunun yerine bu değişkenlerden birinde ve ardından 7'ye dahil edilen fikir olabilir mi?

Bu noktada 6 yaşımdan beri işletim sistemleri dokümantasyonu için avlanmaktan yoruldum. Bu, en azından önemli ölçüde daraltıyor. Versiyon 7'nin $ işaretini komut istemi olarak gösteren ilk Bell Labs sürümü olduğunu biliyoruz. Emin olmamız gereken tek şey, bu Versiyon 6 çeşitlerinin hiçbirinin onu tanıtmamış olması. Bu değişimin Versiyon 7'de ortaya çıkması mantıklıdır, çünkü Bourne kabuğunu tanıtan sürüm, Unix'in önceki sürümlerinde kullanılan Thompson kabuğunu (ve Programcı'nın Çalışma Tezgahı Unix'inde kullanılan Massey kabuğunu ) değiştirdi.

Yine de son bir düşünce:
$ kelimesinin kabuk veya senaryo için bir ipucu olma fikri çekici ve mantıklı olsa da, bunun resmen onaylanmasını beklemeyin. Unix gelişimi, bir sembolün nasıl geliştiğini izlemekten ziyade, yaşamında çok daha büyük endişeleri olan oldukça büyük bir grup insan tarafından paylaşıldı. Ve bu olağanüstü programcıların bazıları artık aramızda bile değil.

Büyük olasılıkla, "UNIX $ (dolar) komut isteminin kaynağı nedir?" Sorusundan almayı umduğunuz en iyi şey. onu tanıtan ilk Unix kabuğunun adıdır.


4
Versiyon 7, Bourne kabuğuna sahip ilk Unix'ti. Versiyon 6'daki Thompson kabuğunu değiştirdi. Bu, kabuk istemcileri arasında bir betimleme olması mantıklı geliyor.
wfaulk

1
Evet. Bourne Kabuğuna kadar izini bulabiliriz. Yazara gelince, hiç şüphe yok. Ama aynı herkes gibi Bell Bell'de çalışandı.
Cüce,

1
Ayrıca, en azından Sürüm 3’e kadar olan adam sayfaları vardı: minnie.tuhs.org/UnixTree/V3/usr/man/man1
wfaulk

2
Altıncı baskı günü ve öncesine, UNIX tam kaynak koduyla birlikte dağıtılmıştı. Bunu yapan tüm üniversiteler yerel değişiklikler yapma eğilimindeydi (BSD'nin geldiği yer) bu nedenle, belki de bir "kabuk" isteminin bir salyangoz gibi görünmesi ve% 'si @ . Ve dediğiniz gibi, çok sayıda değişken vardı ve v7'de tekrar bir araya geldiklerinde, değişikliklerin kökenleri bulanık değildi.
Michael Dillon

3
Bourne için olası bir ilham kaynağı: 1978'deki MTS FORTRAN-IV / WATFIV kılavuzu delikli kart girişini açıklar: "kontrol kartları", "her zaman sütun 1'de bir dolar işareti ($) ile başlayan" komutları içerir. "
cxw

9

Orijinal Bourne kabuğu istemi "@" adlı salyangoz kabuğu idi. Bunu UNIX'in ticari olarak satılmadan önce olduğuna inandığım UNIX 6. basımda hatırlıyorum. Bu yüzden $ işaretine geçiş, UNIX'in ticarileştirilmesiyle ilişkili olabilir, Robert'ın önerdiği gibi $ cehennem.


3
Bourne kabuğu Versiyon 7'ye kadar yoktu.
wfaulk

2
Şey, biz sadece ona "kabuk" diyoruz, bu yüzden onu kimin yazdığını bilmiyorum. Bir salyangoz kabuğu gibi bir sarmalda veya tabelada düzenlenmiş tüm kabuk komutlarıyla posterleri gördüğümü hatırlıyorum. Belki O'Reilly'dendi ama emin olamıyorum.
Michael Dillon

8

Aslında, Linux'ta standart komut satırı isteminde Bourne, Bash veya Korn kabuğu kullanan normal bir kullanıcı hesabı için dolar işareti ($), root isteminde ise bir karma işareti (#) bulunur. Buna karşılık, geleneksel C kabuğu istemi yüzde işaretidir (%).

Tahmin edersem, $ $ cehennem kelimesini hatırlatıyor, bu yüzden muhtemelen seçilmişti.


4
Gerçek kökenini soruyor, insanların olabileceğini düşündüğü şeyi değil.
davr

6
Sakin olmayın. Burada verilen diğer cevaplara bakılırsa, kimse gerçekten kesin olarak bilmiyordur.
Robert Harvey,

1
Kök isteminin # yorum karakteriyle çakışmak için seçildiğini tahmin ediyorum, yanlışlıkla tehlikeli komutları yapıştırma olasılığını azaltıyor ... ya da belki değil! Geride kes ve yapıştır gibi pek bir şeyleri olduğunu sanmıyorum.
Sam Watkins

Buna değer, aradığım cevap buydu çünkü hangisinin hangisi olduğunu asla hatırlayamıyorum.
John Leidegren,


2

Dikkat: Bu doğru olmayabilir, sadece vahşi bir tahmin:

$Psikolojik bir hatırlatma olan bir his var .

O zamanlar şunu hatırlamalıyız, dijital bir bilgi istemi yoktu, sadece bir kağıt "teletype" ( tty). Muhtemelen dolar, "Bu telefonu sıraya sokmak için kağıt ve para harcıyorsunuz. Sadece bazı komutları girin!" Demekti.

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.