Komut isteminde ağrı nasıl azaltılabilir


38

Yaptıklarım üzerinde ve yalnızca öğrenme deneyimi için daha fazla denetim sahibi olmak için Windows'ta komut istemini daha iyi kullanmayı öğrenmek istiyorum. Şu an sahip olduğum en büyük sıkıntı, yazımın tümü. Büyük yollu bir dosyada işlem yapmak istersem en az bir dakikalığına orada oturuyorum ve bir hata yaparsam yukarı ok tuşuna basıp her şeyi kaydırıp bulmam gerekiyor. neyi yanlış yaptım. Bunu kolaylaştırmak için herhangi bir araç var mı?


Windows komut istemini bash'ın yaptığı "-o vi" seçeneğine sahip olmak isterdim. İşleri çok hızlı yapar (tabii ki birazcık vi'yi
tanıyorsanız

2
Sekme tamamlama! Herhangi bir iyi terminalde buna sahip olacaktır (ve eğer oturmazsa, oturduğun terminalin kapasitesini sorgulayamam).
new123456

Özellikle öğreniyorsanız, PowerShell'i öğrenin. Eski osuruklar için yeni bir numara öğrenmek zor olabilir. Ancak yeni başlayanlar için, başlangıçta en iyi yol boyunca öğrenme enerjilerinizi yönlendirmek için bu tavsiyeyi erken almak iyidir.
music2myear

Yanıtlar:


33

Komut istemini yalnızca Windows altında kullanmak istiyorsanız, Windows PowerShell'i ilk komut isteminden daha kolay kullanılabildiğinden ve bazı davranışları * nix benzeri terminallerden kopyaladığınızdan kullanabilirsiniz. (Aynı zamanda çok daha fazla işlevsellik sağlar, ama ilk başta, en azından bana göre, bu "daha kolay bir komut kabuğu").

powershell resmi

Düzenleme: Daha "dost" bir fotoğraf için resim değiştirildi.


wikipedia bakışlarına göre, resim şu an kullandıklarımdan biraz daha sert görünüyor. Hala bu * nix terminallerinden bir tanesini bırakıp pencereleri öğrenmek için uğraşıyorum ama teşekkürler.

3
Evet, bu durumda belki de gerçekten uyarlanmış değil. Bana göre, daha önce de bildiğim gibi * nix terminalleri, bu powershell bana yardımcı oldu. Genellikle, "ls" "dir" gibi çalışır. Genel olarak, sanırım, gezinmeyi kolaylaştıran orijinal kabuk ile karşılaştırıldığında "sekme tamamlama" için de daha tutarlı.
Gnoupi

1
PowerShell gerçekten gitmenin yolu. Cmd.exe dosyasının uzun bir kullanıcısı olarak, bunun gerçekten sınırlı olduğunu söyleyebilirim. Akıllıca bir şey yapmak istediğinizde, VBScript ya da benzeri bir şeye ihtiyacınız olacak, o yüzden bunu öğrenmeniz gerekecek. Her komutun kendi sözdizimi vardır ve nadiren benzerdir, bu yüzden her birini öğrenmek zorundasınız ve kolayca tahmin edemezsiniz. PowerShell çok daha güçlü ve daha tutarlı, böylece öğrendiklerinizi bir komuttan diğerine uygulayabilirsiniz.
seri hobisi

Ayrıca bazı PoSh komutları geçişi kolaylaştırmak için cmd komutlarıyla aynı olan takma adlara sahiptir. Örneğin, dir eserleri (Get-ChildItem'e diğer adı verilir). Ancak PowerShell'de ayrıca kayıt defterini ve diğer şeyleri de yönetebilirsiniz.
serialhobbyist

1
Ayrıca, PowerShell çok daha iyi (IMO) yardım metnine sahiptir. Hiç kimse size cmd sayfalarını okumanızı söyledi mi?
Merhaba71,

45

TabDosya adlarını otomatik olarak tamamlamak için bu tuşu kullanabilirsiniz . Her ne kadar akılda tutulması rağmen, önce onu tanımlamak için yeterli dosya adını yazmanız gerekir, aksi takdirde yanlış eşleşmelerde karıştırmanız gerekir. Örneğin, bu dosyalara sahip bir klasörünüz var ve içinde bulunduğunuz geçerli dizininiz cmd:

.
..
Su.exe
Sup.txt
SuperUser.COM

otomatik tamamlama yapmak SuperUser.COMistiyorsanız, yazmak zorundasınız, supesonra Tabdiğer dosyalardan hiçbiri bu 4 karakterle başlamadığından, tuşuna basın . Yazmış suve basmış Tabolsaydınız, TabSuperUser.COM'a ulaşmak için iki kez daha basabileceğinizi ya ShiftTabda listede geriye doğru gidip oraya gitmek için yazabileceğinizi unutmayın .

Diğer bir püf noktası ise dosyayı bir kaşif penceresine sahipseniz, onu cmdpencereye sürükleyebilirsiniz ve adınızı sizin için yazacaktır.


2
Bu harika çalışıyor, ama dosyalar arasında sekme yaptığım zaman bazen benimkinin üzerinden geçiyorum, geriye gitmenin bir yolu var mı?

14
Evet, shift-tab :)
John T

2
Bonus gerçek: shift+ <any key that cycles through tabs/windows>her zaman tersine eşdeğerdir örneğin alt-tab-> alt-shift-tab.
glenneroo

27

Komut istemini kullanmayla ilgili bazı ipuçları ve püf noktaları şunlardır :

"... n '' sürükle 'dosya veya klasörlerini bir gezgin penceresinden komut istemine sürükleyin; bu işlem, alıntılanan yolu elle yapıştırmışsınız gibi ekler ..."

Bu, uzun dosya yollarında yer alan yazma miktarını azaltmanın başka bir yoludur.


3
Şimdi BU yararlıdır. Bunu hiç bilmiyordum.
EvilChookie

1
Zaten orda cevabım vardı: P
John T

Bu, Windows Vista veya Server 2008'de çalışmıyor, ancak Windows 7 ve Windows Server 2008 R2'de tekrar çalışıyor. Bkz superuser.com/questions/27347/what-is-conhost-exe/28897#28897 birkaç ayrıntı için.
Reuben

Diğer tavsiyeler de çok iyi
Casebash

21

İşte fonksiyon tuş eylemlerinin tam listesi :

F1 retypes the previous command one character at a time
F2 brings up a dialog and asks “Enter the char to copy up to:”
F3 retypes the last command in full
F4 brings up a dialog and asks “Enter char to delete up to:”
F5 as for F3
F6 Print EOF character (Ctrl+Z)
F7 brings up a dialog of all the recent command history
F8 brings up each of the most recent commands, one at a time
F9 brings up a dialog and asks “Enter command number:”

2
Çalışacak F4'ü olan var mı? İletişim kutusu görünür ancak silinmez.
Charles Beattie,

15

Basmak F7 son idam komutları listeler.

cd \c:dizine geri dönmek için .


2
Hmm, bunu bilmiyordum.
Gnoupi

GÜZEL! (Söylemem gereken tek şey bu ama bir cevap 15 karakter uzunluğunda olmalı ...)
Seyahat eden Teknik Adam

Ben her zaman komut istemini kullanırım ve F7 bir olduğunu bilmiyordum - çok kullanışlı!
Justin,

8

Genellikle, yazdığınız dizini doğru dizinde bırakarak azaltabilirsiniz. Klasör türü ilişkilerinde cmd.exe ekleyerek bir Explorer penceresinde gördüğünüz dizinde bir komut kabuğu açabilirsiniz.

(Araçlar - Klasör Seçenekleri - Dosya Tipleri - Klasör - Gelişmiş - Yeni - cmd)

Ardından, bu klasöre sağ tıklayarak cmd'yi seçtiğinizde, açılan komut penceresi o anki klasörün üzerine tıklattığınız dizinin aynısı olacaktır.

alt metin


1
XP kullanıcıları için, XP için MS Power Toys bunu size sağlayacaktır: microsoft.com/windowsxp/Downloads/powertoys/Xppowertoys.mspx
akf

Bunu sizin için yapan birçok widget olduğunu biliyordum, ancak her zaman bir widget'in yerini alacak bir self-config'i severim. Bu bilgi için teşekkürler.
music2myear

7

Windows PowerShell çok ezici ise, bazı cmd değiştirme kabukları da vardır:

Ve daha fazlası google üzerinden bulunabilir.


Cygwin için +1: Bu araç setini kullanmak, öğrendiğiniz püf noktalarının Linux kurulumlarına ve bir ölçüde aynı veya benzer aletlerin ve bash-a-benzeri mermilerin bulunduğu diğer işletim sistemlerine (BSD, MacOS, ...) bağlı olduğu anlamına gelir. Powershell ezici olsa da, cygwin de olabilir.
David Spillett

Console için +1, bu bir yedek kabuk değil, mevcut kabuklar için daha iyi bir terminal.
wfaulk

Cygwin için +1, ancak emülatör korkunç. Bu durumda, Terminator + Cygwin'i önerebilirim.
jamesh

Ben TCC'nin büyük bir hayranıyım (1989'dan beri 4DOS olduğundan beri); PowerShell'i tercih ederim. Ve şimdi TCC / LE'nin ücretsiz olduğu bir TCC kurulumuyla tamamlanan .BTM komutları gönderebilirim :-) Not PowerCMD ve Konsol'un değiştirme komut işlemcileri değil, değiştirme terminalleri olduğunu unutmayın. Şahsen, her biri bir TCC (veya Cmd veya Cygwin) oturumu içeren birden fazla sekme ile Konsol kullanıyorum.
billdehaan

andlinux.org andLinux, Cygwin'den daha kullanıcı dostu.

7

Komut istemini kullanırken sürekli kullandığım bir şey, son kullanılan komutları kaydırmak için yukarı ok (ve aşağı ok). Özellikle uzun bir komuta girdiğimde ve yalnızca bir kısmını yeniden yazmadan düzenlemek istiyorum.

Kısa bir örnek, eğer:

c:\>ping 192.168.1.1

Ve sonra benzer bir adrese ping yapmak istediğinizde, sadece yukarı oka basabilirsiniz. Komut, imlecin sonunda bulunan komut isteminde görünür. Bu, bir kez geri çekilmeyi ve adresi 192.168.1.2 veya benzeri bir şeyle değiştirmeyi kolaylaştırır.


4

Komut istemini kullanmanızı öneririm .

Biliyorum, çok garip görünüyor, ancak bu ciddi bir durumdur - eğer anında yardımcı olmazsanız --- tavsiye. Bunu bilmek ve derin bir şekilde absorbe etmek için tekrar tekrar kullanmak zorundasınız .


9
Evet, istiyor, ama onunla ne yapabileceğini bilmek istiyor, sanırım. Çünkü "bruteforcing" mevcut komutlar biraz zaman alabilir.
Gnoupi

Komut istemini iddialı bir sistem dağıtım toplu komut dosyası yazarak öğrendim. Düşünebildiğim her özelliği, forumlarda ve çalışana kadar tanıdığım diğer sorularda soru sormaya devam etmede istenen görevin faydası olacağını düşünmeye çalıştım. 1500 hat ve hala kullandığım çok iyi bir deneyim.
music2myear

@ music2myear 28, yeterince yaşlısın. DOS'unu günde öğrenmedin, nerelerdeydin?
barlop

Babam ben 10 yaşındayken ilk bilgisayarımızı satın aldı. DOS 4, sanırım öyleydi ve Win 3.1. Sadece boyama uygulamaları ve hangi oyunları oynayabileceği ile ilgilenmiştim. 98'e kadar mühendislik okumak için kendi bilgisayarıma sahip değildim. Ve bu sistemin sorun yaşamaya başlaması değildi ve gerçekten teknoloji ve bilgisayarlara girdiğim için kendimi düzeltmek zorunda kaldım. 2003 yılında BT desteği alan bir iş buldum ve daha önce bahsettiğim toplu betiği yazdım. Ben sadece geek standartlarına göre geç bir başlangıç ​​oldu.
music2myear

4

Hızlı düzenleme modunu şu şekilde etkinleştirin:

  • Metni kopyala: metni seç + ENTER
  • Sağ tuşa basarak kodu yapıştırın.

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

Ayrıca Font ve mizanpajı varsayılan bit haritasından daha hoş bir şeyle değiştiririm.

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

Son olarak, düzenleme penceresinden daha fazla satır ve sütun ekleyin ve arabelleğe daha fazla satır ekleyin.

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

Ekran görüntüleri ispanyolca, ancak İngilizce olarak tam olarak aynı yerdeler.


1
Konsol penceresinin genişliğini değiştirmek, yeni bir bilgisayarda yaptığım ilk şeylerden biridir.
Justin,

+1 Varsayılan yükseklik aynı derecede işe yaramaz.
glenneroo

2

Kesinlikle bir kopyasını kapmak Cygwin ve PATH değişkeni olan \ bin klasör eklemek. Kullanılabilir bir komut istemi gibi!

Ama gerçekten, buna alışmanın tek yolu buna alışmak, öyleyse kullan!


Windows ile hayatımda zor zamanlarım olmadan
istemem

1

XP kullanıyorsanız (Vista'yı tanımıyorsanız) , gezgin klasörünüzün bağlam menüsüne "Burada komut penceresini aç" menü girişi ekleyen bir powertoy indirebilirsiniz.

Kullanışlı bulduğum başka bir şey, her şeyin varsayılan Windows yollarını kullanmayı bırakmak. Onlar hatırlamak için çok zor ve mekanlar bir sorun haline gelebilir. Linux'un dizin yapısına benzer bir şey kullanmak, gerçek zamanlı bir tasarruf olabilir. Dizinlerim şunun gibi bir şeye benziyor (örnekler yoluyla):

 - C:\usr\bin\firefox 
 - C:\usr\bin\7zip
 - C:\usr\bin\dropbox

 - C:\usr\lang\cpp\gcc
 - C:\usr\lang\cpp\lib\qt_4_5_0
 - C:\usr\lang\python\py25

 - C:\usr\home\wrksp\cpp
 - C:\usr\home\doc
 - C:\usr\home\wrksp\svn

Hatırlaması çok daha kolay.


5
Vista (en azından Ultimate Edition) varsayılan olarak buna sahiptir, ancak ortalama bir kullanıcıdan gizlenmiştir. Sadece shift tuşunu basılı tutup sağdaki Explorer bölmesinde bir klasörü sağ tıklayın ve "Burada Komut Penceresini Aç" seçeneğini görmelisiniz.
GAThrawn

@Gathrawn, Vista Home Premium'um var ve bu özelliği de orada gördüğümü onaylıyorum.
Shivasubramanian

"C: \ usr \ bin \ 7zip", "c: \ Program Files \ 7zip" den çok daha hızlı mı geliyor? Tuş vuruşları açısından .. c: \ prog <tab> \ 7zip vs c: \ usr \ bin \ 7zip belki program dosyalarını bulmak daha hızlıdır?
barlop

1

Şahsen, Komut İstemi'ni kullanmayı öğrenmek istiyorsanız ve onu eğlenceli bulmuyorsanız, Komut İstemi'ni kullanmanız gerekmeyeceğini düşünüyorum.

Bir CLI'ye basmanız gerektiğinde, onu faydalı ve hatta hoş bulacaksınız. Günlük işlerinizi bununla yapmaya çalışıyorsanız, başınızı duvara dayayın.

Komut istemine aşina olduğunuzda, günlük işlerinizi o güne geçirebilirsiniz, çünkü fareye her zaman ulaşmaktan daha kolaydır :)


Çok doğru. Gereklilik, aşinalık doğurur.
J. Polfer

1

Çevre değişkenlerini kullanın.

Örneğin, c: \ document and settings \ username yazmak yerine% userprofile% öğesini kullanabilirsiniz. Standart ortam değişkenlerinin listesi için SET yazıp komut isteminde enter tuşuna basın.

Ek olarak, kullanabileceğiniz komutları tanıyın - onlar için iki siteyi seviyorum: www.ss64.com ve www.robvanderwoude.com

Toplu komut dosyasını da öğrenebilirsiniz - bunu kullanarak sık kullanılan görevleri otomatikleştirebilirsiniz.


1
  • Klavyeyi kullanarak bir komut penceresine yapıştırmak için alt-boşluk, e, s tuşlarına basın.
  • "D" harfiyle başlayan son komutu tekrarlamak için (örneğin; herhangi bir karakter olabilir) d ve ardından F8 tuşlarına basın.

İkinci uç, biraz belirsiz gelebilir, ancak konsolda çok zaman geçirdiğinizde, yukarı ok veya F8'e birkaç kez basmaktan çok daha hızlı ve daha kolay olabilir.


1

Bu konuda yayınlanan bazı harika ipuçları var!

Benim düşünceme göre, CMD değişikliklerini gönderme yerine 'Konu Dışı' dır. Fakat burada sorun yok gibi görünüyor, böylece ColorConsole'u listeye ekleyebilirim .

Sekmeli arabirimi , Favori Komutları menüsü, Kopyala / Kes & Yapıştır ve aslında HTML ihracat artık kaçırmak istemediklerini çok yararlı özelliklerdir.

ps: bunu "Firefox eklentileri olmalı" başlığında deneyin: Lads, Opera'yı kazanın, hazır bir şekilde güzellikler var! :)



0

Powershell kullanmak için öneriye katılıyorum. Ek olarak, ortak görevleri yazmak için daha az harf harcayan işlevleri ve takma adları kurmanın inanılmaz yararlı olduğunu düşünüyorum.

Örneğin, bir http linkini başlatmak için bunu powershell profilime kurdum:

function browse-url { param($url="http://www.google.com/"); (new-object -com shell.application).ShellExecute($url); }
set-alias -name "browse" -value "browse-url"

ve sonra sadece browsegoogle açmak veya browse http://....belirli bir bağlantı açmak için yazın

Dosya veya dizin listelemek için başka bir örnek:

function lsa { param($path="."); Get-ChildItem -Force $path }
set-alias -name "la" -value "lsa"
set-alias -name "ll" -value "lsa"
function lsd { param($path="."); lsa $path | ? { $_.PSIsContainer } }
function lsf { param($path="."); lsa $path | ? { !$_.PSIsContainer } }
function lat { param($path="."); lsa $path | sort -property lastwritetime -descending }
function latr { param($path="."); lsa $path | sort -property lastwritetime }
function fi { param($pat,$root="."); gci -r $root | ? {$_.Name -match $pat} | % { $_.FullName } }

Daha sonra lsa, gizli öğeler de dahil olmak üzere bir dizindeki tüm öğeleri göstermek için kullanıyorum . Kullanın laveya lldaha kısa takma ad olarak kullanın .

Kullandığım lsdliste yalnızca klasörlere lsf, liste sadece dosyalara latson yazma saate göre sıralı listeye ve latrters yönde zaman listeye.
fiunix findkomutu için basit bir alternatif olarak kuruldu , sadece tekrarlı bir şekilde bir dosya adı arayın.


0

Windows Gezgini değiştirme Xplorer2'yi yükleyin . Windows GUI İLE, fare kullanımı, kopyala-yapıştır işlevleri için sağ tıklayın vs. komut isteminin tüm işlevlerine izin veren bir komut istemi aracı içerir.

Komut İstemi Ekran Görüntüsü

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.