Çeşitli komutların seçeneklerini hatırlamak için hangi hileyi kullandığınızı merak ediyorum? Her zaman man sayfalarına bakmak zaman alıcı ve çok havalı değil!
manSayfaları okumak çok güzel ... :)
Çeşitli komutların seçeneklerini hatırlamak için hangi hileyi kullandığınızı merak ediyorum? Her zaman man sayfalarına bakmak zaman alıcı ve çok havalı değil!
manSayfaları okumak çok güzel ... :)
Yanıtlar:
Hile basit: Sadece yapmıyorsun. Bu bir zaman kaybıdır ve sadece gerekli değildir. Komut seçeneklerini ezberlemek özellikle yararlı bir yetenek değildir. İşlerin genel olarak nasıl çalıştığını anlamak ve en başta hangi araçların var olduğunu ve bunları ne için kullandığınıza dair belirsiz bir fikre sahip olmak çok daha önemlidir. Burada çok önemli bir beceri, henüz bilmediğiniz şeyleri nasıl bulacağınızı bilmektir.
Man sayfaları zaman alıyor mu? Öyle değil. Bunları okumak zorunda değilsiniz - en azından her seferinde değil - bir arama fonksiyonu var. Ben biriydi şifreli hangi seçeneği hatırlamıyorum Yani eğer hdparmbazı WD diskler üzerinde devre dışı boşta zamanlayıcı, yapmam man hdparmve /idle3ve hey, oldu -J. Böyle görünmek o kadar hızlı ki daha sonra yaptığımı hatırlamıyorum bile.
Birisinin tüm hdparmseçenekleri ezberlediğini düşünün . Ne zaman kaybı.
Seçenekleri hatırlıyorsanız iyi olur çünkü bunları sık sık kullanırsınız. Bu, düşünmeden bile otomatik olarak gerçekleşir. Ama aslında bilinçli olarak onları ezberlemeye zaman harcıyoruz ... bunun ne için iyi olması gerekiyordu? Kağıt testi mi?
man hdparm | less -p idle3da istenen terime atlamak için kullanışlı bir yoldur ...
rm -i -f -r, ln -s, df -s -h, cp -r -i, ls -l -h -a, vb (liste kişiden kişiye değişir).
Zsh, varsayılan olarak bağlı olan run-help işlevine sahiptir Alth. Bu işlevle, rsyncörneğin hatırlanması zor birçok veya karmaşık seçenek içeren bir komut yazmaya başlayabilir ve ardından o komutun mansayfasını açabilirsiniz . Yani:
rsync Alth
mansayfayı okuyun ve hangi anahtarlara ihtiyacınız qolduğunu öğrenin , vurun ve ardından komut isteminize, tam olarak kaldığınız yere geri dönün, komutu gerekli seçeneklerle tamamlamaya hazırsınız:
rysnc -azP file dir/
Wiki'nin belirttiği gibi:
İşlev, run-help-command formunun yardımcı işlevleri tanımlanarak daha da özelleştirilebilir. Standart dağıtımda bu tür üç işlev vardır: run-help-git, run-help-svk ve run-help-svn.
bash, bash-completebirçok komut için çok sayıda parametre seçeneği sunacaktır.
zsh
bash's tamamlama, tamamlama listesine açıklama eklemeyi veya girişleri gruplamayı ( --classify -F -- append file type indicatorsörneğin zsh'ın GNU ls tamamlanmasında) desteklemez, bu nedenle neredeyse zsh kadar kullanışlı değildir.
Çok uzun bir komut geçmişi kullanmak ve bu yoldan arama yapmak çok faydalıdır.
Temel olarak tüm kabuk geçmişi dosyalarını topluyorum ve onları grep.
Bulunan sonuçlar birçok durumda çok yararlıdır, çünkü iyi anahtar kelimeler aramak kolaydır.
URL gibi kullandığınız özel bir argümanı ararken ilgili komutları ve seçenekleri de bulabilirsiniz. Spesifik seçenekleri ararken, ilgili argümanları da bulabilirsiniz.
Komutların çoğunda hızlı başvuru için --help vardır ve genellikle bildiğim bir şeyin ne olduğunu hatırlatmak yeterlidir.
Bununla birlikte, -h ve hatta - yerine - yazma konusunda alışkanlığınız var. Kullanım çıktısına veya manuel sayfaya bakmadan önce -h'nin ne olduğunu asla bilemezsiniz. En kötü durumda, -h tehlikeli-otomatik imha için kısa el olabilir.
--help. -?ile alıntı ihtiyaçları zsh, csh, tcshveya fishveya ismi dosyalar varsa -geçerli dizinde tek karakteri ile izledi. -:orada tercih edilebilir.
Sevdiğim bir seçenek, aynı veya benzer seçeneklere sahip takma adlar oluşturmaktır, örn.
alias rmi='rm -i'
alias rmiv='rm -iv'
alias rmv='rm -v'
alias cpr='cp -r'
alias cprv='cp -rv'
Bu şekilde kısa sürede kolayca hatırlayacağınız ancak yansıttığı gerçek seçenek (ler) hakkındaki bilgileri koruyacak hoş bir kısayolunuz olur.
Takma adlarla başka bir yaklaşım, en yaygın seçenekleri seçmek ve bunları kullanan süper kısa bir takma ad yapmaktır. Örneğin lsneredeyse her zaman yaparım lve bunun nedeni:
alias l='ls -alFtrG'
Başka bir seçenek de sadece temel komuta istediğiniz seçenekleri getirmektir, örn.
alias ls='ls -F --color=always'
Son olarak alıştırma, alıştırma, alıştırma ve sabır. Ortak seçenekler yazmaya devam edin ve sonunda bunları öğreneceksiniz. Günlerde yaygın olanlar, haftalar içinde diğerleri ve evet bazılarının sizi tanıması yıllar alır. Bunu, unix programlamanın sizi uzun süre eğlendirmeye devam edeceği bir tedavi olarak düşünün.
Sevdiğim başka bir seçenek, geçmişimi aramayı kolaylaştırmak için bir takma ad ve bunun için iki benzer takma adım var:
alias hg='history | tail -200 | grep -i'
alias hga='history | grep -i'
Bunlar, örneğin bir komutun kullanımlarını aramama izin veriyor:
hg lsls tarihinin son kullanımlarını
hga lsgösterecek ls tüm geçmişimdeki tüm kullanımlarını gösterecektir.
Ben hga çok fazla göstermek eğiliminde bulduktan sonra hg geliştirdi.
rm -iv, OP muhtemelen ne yaptığını da hatırlamaz rmiv. Sorunun tire işareti olduğunu sanmıyorum.
rm -iviçin safe_deleteyarm_prompt
Genellikle yaparım:
man ${CMD} | grep 'what was I thinking about?'
Veya bazı varyasyonları. Bazı sayesinde grepsizin için -C / A / B belirtebilirsiniz s bağlamda , sonra ve önce sırasıyla. Değilse nlve sedoldukça iyi eşleştirilebilir:
man hdparm | #hard to forget
nl -bp'idle3' -nln -w1 | #I had to grep man to put this together
sed -n '/^[0-9]/{N;N;N;s///p}' #no print until line begins w/ number, next,next,next
Drive's "idle3" timeout value. This timeout
controls how often the drive parks its heads
and enters a low power consumption state.
The factory default is eight (8) seconds,
zero (0) to disable the WD idle3 timer com‐
pletely (NOT RECOMMENDED!).
-k Get/set the "keep_settings_over_reset" flag
Aynı teknikler, --helpvarsa menülerle de çalışır, ancak yapmanız gerekebilir, ${CMD} --help 2>&1 | ..filter..çünkü bu tür şeyleri yazdırmak için oldukça standart bir uygulamadır stderr.
Her neyse, sanırım hikayenin ahlaki, en azından hatırla manve grep. Belki gerisini terletme.
grepBelirli bir özelliği ararken genellikle sayfaları yönetiyorum, bu oldukça kullanışlı.