Bir programlama aracının komut satırı sürümünü ne zaman öğrenmelisiniz? [kapalı]


12

Hemen hemen her programlama aracının bir komut satırı sürümü vardır; birçoğu da gui versiyonuna sahiptir. Komut satırı sürümünün farklı komutlarını ve çeşitli seçeneklerini / anahtarlarını öğrenmek çok zaman ve ezber gerektirir.

Bu yüzden (ki mutlaka birbirini dışlamayan) birkaç sorum var:

1) Bir gui sürümünde de gelen bir aracın komut satırı sürümündeki komutları öğrenmeyi / ezberlemeyi ne zaman rahatsız edersiniz?

2) Komut satırı sürümünü hangi araçlarla öğrenmeliyim? ... derleyiciler? sürüm kontrol sistemi? vs vs


Kullandığınız araç bir komut satırı arabirimi sağlar, ancak bunun için iyi belgelere sahip değilse, bu aracı kullanma konusunda dikkatli olurum. Varsa, RTFM. O kadar da zor değil ve bu noktaya gelirse, StackOverflow.com'da bir soru sorun Komut satırından bir şeylerin nasıl yapılacağını anlamanız gerekiyorsa, yapabileceğinize inanıyorum. Bir şey bulmanız gerekip gerekmediğinden emin değilseniz, muhtemelen yapmazsınız. Sadece yeterli zaman olsaydı Hayat ... işin ilginç şeyler dışarıdan dolu
İş

Yanıtlar:


21

Bir programın komut satırı seçeneklerini öğrenmeniz için iki neden görüyorum:

  1. Programı bir şekilde otomatikleştirmeniz gerektiğinde - komut dosyaları, toplu işleme vb. Oluşturun.

  2. Programın davranışını optimize etmeniz gerektiğinde - bellek ayak izini azaltın vb.

Hangi araçları öğrenmeniz gerektiği konusunda - bu tamamen bir sonraki adımda ne yapmak istediğinize bağlıdır.


1
Her zaman otomatikleştirmek için bir program komut dosyası olmak istiyorum ...

1
@ Thorbjørn - Ben öyle demedim mi? Yoksa net değil miydim?
ChrisF

3
Evet. Sadece otomasyon bölümünü vurguladım - mevcut metodolojileri yazılabilir bir şeye uyarlamaya çalışırken daha sonra ağrının neden olacağını anlamak değil.

9

Zaten çok iyi cevaplar. Bir bakış açısı daha ekliyorum.

İnsanı denklemden / işlemden çıkarmak istediğinizde GUI'yi komut satırı araçlarıyla değiştirirsiniz. Bunu yapmak için bazı nedenler ve / veya faydalar:

  • İnsan hatasından kurtulursunuz (komutu tekrarlarken)
  • Her türlü otomasyon için mükemmeldir, örneğin dağıtım, bina veya rastgele girişli testler yapmak.
  • Gerçekten güçlü bir kullanıcı olursunuz . Size meta programlama merdivenine tırmanma seçeneği sunar. Her eylemi (GUI'ye tıklayın) kendiniz yapmak zorunda değilsiniz, kolayca komut dosyası oluşturabilirsiniz!
  • Aletleri birbirine zincirleyebilirsiniz (Unix borularını düşünün).
  • Bilgisayarların işi yapmasını sağlayın - ölçeklemezsiniz, bilgisayarlar yapar!

Ne zaman yapılır? Kendinizi tekrar ettiğinizde.

Tabii ki GUI için yer ve zaman var. Ancak bilgisayarların gücünü gerçekten kullanmak ve Moore Yasası dalgasında sörf yapmak istiyorsanız, görevlerinizi senaryo yazmayı öğrenmeniz gerekir.

Düzenleme : Ekstra bonus. Bu tişörtü giyiyorsun :)


7

Madenler:

1) Daha üretken olmak . Benim için, bir kabukta bir şeyler yapmak sadece tıklamaktan daha hızlı. Bir araç kullanmaktan bahsediyorum, bir servis / araç / vb. Kurmaktan bahsediyorum, çünkü bazen sihirbazın olması ve tıklamanız daha hızlıdır Next Next Next, ancak bu sihirbazlar komut satırı sürümlerinde de bulunur :)

2) Komut satırı sürümünü uygulamalarınızda kullanmak için. Örneğin, bir PDF'yi bir metin dosyasına dönüştürmek istediğinizi varsayalım . GUI sürümünü kullanıyorsanız sorun yok. Ancak aynı zamanda aşağıdaki gibi bir şey yapabileceğiniz bir komut satırı arayüzü ./pdf2text input.pdf output.txtsağlarsa : PDF'den metin okuyan bir uygulama geliştirmeniz gerekiyorsa, herhangi bir API kullanmadan veya bazı değişiklikler yapmadan kolayca kullanabilirsiniz. .

3) Bir uygulamanın genel konularını öğrenmek. Örneğin, Windows'ta diff yüklüyse ve iki dosyayı karşılaştırmak için bir ön uç varsa. Mükemmel. Ama ya Linux'ta kullanmanız gerekiyorsa ? Linux için aynı ön ucu bulabilirsiniz, ancak yoksa? Linux'ta nasıl kullanılacağını tekrar öğrenmeniz, yeni bir ön uç takmanız ve onunla çalışmaya alışmanız gerekecek. Komut satırı sürümünü nasıl kullanacağınızı öğrendiyseniz, buna ihtiyacınız olmazdı;)

Yaklaşık 3) ... bazı insanlar Git ile Windows üzerinde çalışmaya alışmakta çok fazla sorun yaşıyor . Windows'ta iyi bir ön uç olmadığını söylüyorlar, ancak komut satırı yolunu öğrenirseniz sorun yaşamayacaksınız. Aynı şekilde çalışır. Tabii ki, sorun bazen insanların komut satırından korkmalarıdır ;)

Komut satırı sürümlerini öğrenmenizi öneririm:


Git: D için evet evet +1: diff tek örnek olsa da, ben gerçek komutunu kullanmazdım; Ben vimdiff tercih (teknik olarak çok terminal ne olursa olsun tahmin rağmen)
alternatif

@mathepic haklısınız, ama vimdiffaynı zamanda bir komut satırı aracı değil mi?
Oscar Mederos

Aynı zamanda ncurses (sanırım, emin değilim) bu yüzden küçük bir ayrım yapıyorum.
alternatif

evet, ama bunları komut satırı araçları olarak da alıyorum :)
Oscar Mederos

@mathepic: Endişenizin cevabı:gvimdiff
Lie Ryan

3

Parametre sözdizimini neden belleğe almanız gerekiyor? Bu yüzden manvar ve --help( /?winblowz topraklarındaysanız).

Bir dakikadan daha kısa sürede her şeye ilişkin seçeneklere bakabileceğimi düşünüyorum. Nesnel komutlar neyi hatırlamak yapmak yukarı bakmak gerektiğini bilir!


1

Pragmatik olarak, gui aracının bir özelliği eksik olup olmadığı veya komut satırından daha hızlı olup olmadığı ortaya çıkar.

Bununla birlikte, bir komut satırı kullanmanın yan yararı, belgeleri okuma ve gerçekte neler olduğunu bulma olasılığınızın daha yüksek olmasıdır. Özellikle sürüm kontrolü örneğinizle, bunu komut satırından yapmak size biraz öğretecektir.


1
  • Derleyici: Otomatik derlemeler için gerekli olacak
  • Marka veya derleme sisteminiz: otomatik derlemeler yakalama hataları
  • Sürüm kontrolü: Sanırım öyle, ama bu üçünden en az önemli olanı. Ama sonra diğer komut satırı işlemleri yapabilirim, örneğin değişiklik iletileri aracılığıyla grep.

Ancak derleyicinin seçeneklerini ezberlemenize veya yapmanıza gerek yoktur; bunlar proje için kurulduktan sonra sık sık değiştirmeniz gerekmez.


1

Bir komut satırı aracını öğrenmenin faydaları, GUI kullanımının faydalarından çok daha fazla olduğunu hissediyorum. GUI'nin özelliklerini kaybettiği birçok kez vardır, ancak bunun her zaman böyle olduğunu söylemek adil olmaz (yani Windows'ta cmake'ye bakın - normal koşullar dışında komut satırı kullanmak için bir neden yoktur).

Ezberlemeye gelince, programın komutunu ilk kez kullandığınızda hatırlamanıza gerek yoktur. El kitabına yer imi koyun (çevrimiçi kılavuzu kullanıyorsanız * nix üzerinde "man" kullanın) ve belirli bir işlevselliğe ihtiyacınız varsa (ezberlemediğiniz), sadece kılavuza bakın. Bu şeyler üzerindeki ezber, doğal olarak kullanımla gelmelidir. Örneğin, komut satırından "tar" ve "gzip" komutlarını çok sık çalıştırıyorum, ancak normalde yapmadığım görevleri gerçekleştirmek için el kitabına başvurmam gerekiyordu.

Her şeyden önce, bir ürün gönderiyorsanız veya bir tür kaynak kodu veya başka bir geliştiriciye başka bir şekilde gönderiyorsanız, bir komut iskeleti eklemek, GUI'yi kullanma hakkında ayrıntılı talimatlar yazmaktan çok daha kolaydır. Geliştirici, kullandığınız komut satırı seçeneklerini anlamıyorsa, bunları arayabilir. Birine GUI'yi açıklamak her zaman en taşınabilir çözüm değildir.

Saygılarımızla,
Dennis M.


0

Her şey, böylece geliştirme için X11 / Windows'a bağımlı değilsiniz. Bir terminalden tamamen gelişebilmek güzel.


Size katılıyorum;)
Oscar Mederos

0

Kısa cevap: değişikliğine için en iyi zaman (yani, kullanım komut) olduğu ŞİMDİ . Gerçek erkekler klavye kullanır. Gerçek erkekler TIKLAMAYIN. Dönemi.

Daha uzun cevap: Uzun vadeli perspektifte, daha üretken ve dolayısıyla daha değerli olmanın yanı sıra (daha az işten çıkarılma olasılığı), komut satırını kullanmak sizi daha akıllı (önemli uygulama / ezberden dolayı) ve daha sağlıklı (çünkü fare ile bir yerine iki elinizi aynı anda komut satırı arayüzünde kullanmak ergonomi için daha uygundur).

İşte şiddetle tavsiye makale / deneme "dir Neden, Windows Stupidity nedenler de," http://www.over-yonder.net/~fullermd/rants/winstupid/1


3
Şaka ya da değil, gerçek erkeklerin hiçbir ödülü kazanamayacağını, ancak% 100 CLI kullanmanın çok daha verimli olduğunu kabul etsem de, maço gürültüsü sadece aptal.
ocodo

0

Eminim sen gerektiğini değilim hiç bir komut satırı aracı üzerinde anahtarları ezberlemek deneyin. Bir kabuk komut dosyası veya herhangi bir görevi otomatikleştirecek bir şey oluşturuyorsanız, daha sonra neyin yanlış gittiğini bulmak için saatlerce süren acıdan kaçınmak için tüm bu şeylere bakmanız daha iyi olur. Aynı komut satırı aracını tekrar tekrar kullanıyorsanız, belki bir kabuk komut dosyası oluşturmanız gerekir ...

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.