Bourne-Again kabuğu

Bourne-Again kabuğu Bu görüntünün açıklaması, aşağıda da yorumlanmıştır Bash kullanma örneği. Bilgi
Yaratıcı Brian tilki
Tarafından geliştirildi GNU Projesi
İlk versiyon 8 Haziran 1989
Son sürüm 5,1 (7 Aralık 2020)
Depozito git.savannah.gnu.org/cgit/bash.git
Yazılmış VS
İşletim sistemi GNU / Linux , BSD ( d ) , macOS ve Microsoft Windows
Çevre X86_64 ve i686 ( d )
Biçimleri okuyun Bash komut dosyası ( d )
Diller İngilizce ve fransızca
Tür Sistem arayüzü
Komut yorumlayıcı
Lisans GPL-3.0 + ( d )
Dokümantasyon www.gnu.org/software/bash/manual
İnternet sitesi www.gnu.org/software/bash

Bash ( Bourne-Again kabuğunun kısaltması ), komut dosyası benzeri bir komut satırı yorumlayıcısıdır. Öyle Unix kabuk içinde GNU projesinin .

Bourne kabuğuna dayanan Bash, özellikle Korn kabuğundan ve C kabuğundan birçok iyileştirme getiriyor . Bash, GNU Genel Kamu Lisansı altında yayınlanan ücretsiz bir yazılımdır . Öyle varsayılan tercüman birçok üzerindeki serbest Unixlerde özellikle üzerinde, GNU / Linux sistemlerinde . Ayrıca, Mac OS X için varsayılan kabuktu ve zsh tarafından macOS Catalina (10.15) ile değiştirildi . İlk olarak Cygwin projesi tarafından Microsoft Windows'a taşındı ve Windows 10 kendi başına bir seçenek olduğundan, işletim sisteminin Linux için Windows Alt Sistemi olarak adlandırıldı .

Tarih

"Yine Bourne", Bourne kabuğundaki bir kelime oyunudur . Kelimenin tam anlamıyla, Bourne yine "tekrar Bourne" anlamına gelir, ancak aynı zamanda neredeyse yeniden doğmuş gibi telaffuz edilir , "yeniden doğmuş" veya "yeniden doğmuş" anlamına gelir. Ayrıca bash , İngilizcede "sert vurmak" anlamına gelir.

Brian Fox , 1988'de Bash'in ilk uygulamasını Özgür Yazılım Vakfı adına yayınladı . Daha sonra Chet Ramey tarafından aktarıldı. Orijinal Bourne kabuğu Bash ilham alındığı, tarafından yazılmıştır Stephen Bourne dan 1977. Sürüm 3.0 tarihleriTemmuz 2004ve sürüm 4.0 Şubat 2009.

24 Eylül 2014, Bash'in CGI komut dosyaları aracılığıyla saldırıya uğramasına izin veren büyük bir güvenlik açığı kamuya açık hale getirildi . Kullanıcıları daha sonra ona karşı korunmak için yama yapmaya davet edilir.

Kullanım

Tüm komut dosyası yazılmış komut satırı yorumlayıcıları gibi , Bash dört temel işlemi gerçekleştirir:

  1. Bilgisayarda çalışmak için bir komut listesi sağlar (programları başlatmak, dosyaları kopyalamak, vb.);
  2. Bu komutların komut dosyası adı verilen tek bir dosyada gruplanmasına olanak tanır  ;
  3. Yürütülürken veya olası bir doğrulama prosedürü sırasında komut satırını kontrol eder ve bir sözdizimi hatası durumunda bir hata mesajı verir  ;
  4. Doğrulama durumunda, her komut satırı yorumlanır , yani işletim sistemi tarafından anlaşılabilir bir dile çevrilir ve ardından onu çalıştırır.

Komut dosyaları, genellikle oluşturulması kolay olan kısa programlardır. Bash bir akış yönetimi hizmeti sağlar , yani bir komut dosyasının (çıktının) sonucunun başka bir komut dosyasına (girdi) aktarılmasına izin verir. Bu şekilde, komut dosyaları "zincirlenebilir" ve her biri tek, iyi tanımlanmış bir görevi yerine getirir.

Komut dosyaları kullanıcı tarafından manuel veya sistem tarafından otomatik olarak yürütülebilir. Örneğin, GNU / Linux Ubuntu dağıtımında , dizin resume.d, sistem yeniden başlatıldığında, yani sistem uykuyu bitirdikten sonra otomatik olarak çalıştırılan bir dizi komut dosyası içerir. Bu komut dosyaları, bekleme modunda kesintiye uğrayan çeşitli programları yeniden başlatmak için kullanılır.

Operasyon

Bash, etkileşimli modda veya toplu modda kullanılabilen bir kabuktur:

Etkileşimli mod oturumu

Bir "oturum", bir bilgisayar sisteminin kullanıcısı tarafından, ona bağlandığı an ile ondan bağlantısını kesdiği an arasında gerçekleştirilen eylemler dizisidir.

Bash, çoğunlukla GNU / Linux dağıtımlarında oturum açma işlemleri için varsayılan olarak kullanılır. Ayrıca, 2019'daki Catilina sürümüne kadar MacOS X altında varsayılan kabuk olarak bulundu .

Etkileşimli modda kapat

Oturum, komutuyla kapatılır exitveya Ctrl+D(Unix'te dosya sonu işareti: kullanıcı yorumlayıcının okuma akışını kapatır).

Bash başlatılırken yürütülen komut dosyaları

readline ve komut satırını düzenleme

Bash kullanan kütüphane readline gibi izin veriyorsa C kabuğu için, otomatik olarak tam (otomatik tamamlama) komutlar ve dosya Sekme tuşuna yazıp ölçüde çalışmaların hızlandırılması isimleri. Yukarı ve Aşağı tuşları, komut geçmişinde kolayca gezinmenizi sağlar.

Vi veya Emacs modunda komut satırını düzenleme

Benzer bir davranış düzenleme komut satırı için seçmek de mümkündür vi metin editörü veya buna Emacs . Daha sonra komutları kullanmak gerekir set -ove set +obunlar kabuğun seçeneklerini değiştirir. Davranışları sezgiye aykırıdır çünkü set -obir seçeneği etkinleştirirken set +odevre dışı bırakır.

set -o emacsemacs modunda ve set -o vivi modunda komut satırı düzenlemesini başlatır . 2.0 sürümü bu yana, yeni bir iç komut kabuğu davranışını yapılandırmak için eklenmiştir: shopt. Seçeneklerin yapılandırmasının ile değiştirilmesi amaçlanmıştır set. İşleyişi shopt -obenzer set -ove bu shopt +oiçin set +odevamlılığını sağlamak set.

Emirlerin yorumlanması ve uygulanması

Bash, bir çizgiyi yorumlamak için onu kelimelere böler. Bir satırın ilk kelimesi bir komut adı olarak kabul edilir. Daha sonra komutun "parametreleri" olarak da adlandırılan "argümanları", yani işleyeceği verileri, örneğin bir dosyaya yerleştiriyoruz. Son olarak, komutun standart davranışını değiştirecek "seçenekler" ekleyebiliriz. Bu seçenekler, kısa tire olan "-", ardından seçeneğin adı veya kısayol olarak tek bir harf ile sunulur. Tire ile seçeneğin adı arasına boşluk koymayız.

Yorumlama

Bir çizginin her yorumu aşağıdaki kısıtlamalara uyar:

  • İlk satırın kelime olarak yorumlanır isim komutu, diğer kelimeler parametreleri veya seçeneklerdir arasında;
  • her kelime bir veya daha fazla ayırıcı karakterle ayrılır . Varsayılan olarak, bu karakterler boşluk ve tablodur ( Dahili Alan Ayırıcı (IFS) değişkeni kullanılarak değiştirilebilir ;
  • komutun sonu bir "ile işaretlenir; »(Aynı satıra birkaç komut yerleştirmek istiyorsanız) veya satır sonu ile.

Farklı öncelik dereceleriyle ilişkili birkaç tür komut adı vardır. Azalan öncelik sırasına göre, bu ilk kelimeyi yorumlarken şunu buluruz:

  • diğer adı  : Bu başka bir (grubu) kelime (ler) i eş anlamlı olarak tanımlanan kelimelerdir. Bu durumda, yorumlayıcı kelimeyi eşdeğeriyle değiştirerek başlar. Yaygın bir diğer ad örneği, yalnızca girerek alias ll='ls -alh'arama yapmanıza izin vermesidir  ;ls -alhll
  • dahili komutlar  : bunlar yorumlayıcıda tanımlanmış komutlardır. Ayrı bir programın konusu değildirler. Örneğin, cd( dizini değiştir ) veya setdahili kabuk komutlarıdır. Yani which setbir yerini dönmek yok ikili dosya o Bash programın parçası olduğu için, bu komuta karşılık gelen;
  • harici komutlar , yani makinenin diskinde depolanan programlar (veya genellikle "komut dosyası" olarak adlandırılan bir komut dosyası). Örneğin, lsbelirli bir dizinde bulunan dosyaları listeleyen komuttur; which lsikilisinin konumunu verir ls.

Bash, diğer adlarda, dahili komutlarda veya harici komutlarda satırdaki ilk kelimeyle eşleşme bulamazsa, kelimenin önünde satırın command not foundbaşına yazılan bir hata mesajı verir .

Yürütme

Harici bir komut durumunda, kabuk çalıştırılmadan önce bu komuta karşılık gelen programı bulmalıdır. Tüm dosya sistemi boyunca her komut için kapsamlı bir arama çok fazla zaman alır ve sistemi pratikte kullanılamaz hale getirir. Komutun yürütülmesine izin veren program aranırken yalnızca küçük bir dizine başvurulur. Bu dizinler " $ PATH  " adlı bir ortam değişkeninde tanımlanır  . Komut, bu değişkende listelenen dizinlerden birinde, "PATH", bulunmazsa, yürütme, türde bir hata mesajıyla sonuçlanır command not found.

Windows'ta olanlardan farklı olarak, güvenlik nedenleriyle, Bash dahil Unix kabukları, PATH içindeki geçerli dizini örtük olarak içermez, ancak oraya açıkça yerleştirilebilir. Bu, bir kişinin geçerli dizine , harici bir komutla aynı adı taşıyan, bir kullanıcı bu komutu yazması durumunda onun yerine çalışabilecek kötü amaçlı program yüklemesini önlemek içindir .

Sözdizimi

Kabuk meta karakterleri

Bir meta karakter literal anlamını dışında bir anlama sahip bir karakterdir. "*" Bash için yıldız karakterini temsil etmez, onu herhangi bir karakter dizisini veya karakter yokluğunu temsil ediyormuş gibi okur. Metakarakterler, diğer karakterlerin yerine geçenler ve karakterlerin korunmasına izin veren iki sınıfa ayrılır. Bunlar, ters eğik çizgide olduğu gibi tek başına veya çiftler halinde kullanıldığında, Bash'i karakterleri tam anlamıyla okumaya zorlar, yani korunursa, "*" karakteri kaybeder. " tekrar.

İki vekil meta karakter vardır:

  1. *: herhangi bir karakterle, herhangi bir karakterle veya bir dizi karakterle eşleşir;
  2. ? : herhangi bir karaktere eşdeğerdir.

Bir karakteri veya karakter dizesini korumanın üç yolu vardır:

  1. \: bir meta karakterin özel yorumlanmasını engeller;
  2. `: Ters tırnak ( backquotes , tuşlar AltGr+7bir Fransız klavyede) karakter dizesinin bir yorumuna neden bir komut olarak bu karakterlerin ikisi arasında dahil. Örnek for file in `ls` :;
  3. ': Bu karakterlerden ikisi arasında bulunan tüm karakterler metin olarak yorumlanır.

Çıkış karakteri: ters eğik çizgi "\"

Satırın sonunda ters eğik çizgi

Satırın sonunda ters eğik çizgi , komutun sonraki satırda devam ettiğini gösterir. Bu işlev özellikle büyük siparişlerin okunmasını kolaylaştırmak için kullanışlıdır.

C'nin özel karakterlerinden birini oluşturmak için ters eğik çizgi

$'\n'Ters eğik çizginin varlığına dikkat ettiğimiz benzer bir biçime sahip dizeler, Bash tarafından belirli bir şekilde yorumlanır. Ters eğik çizginin ardından bir harf geldiğine ve grubun kesme işaretleriyle çevrildiğine dikkat edin. Bu durumda, bir meta karakterin anlamından kaçma meselesi değildir. Bu, Bash'e ters eğik çizgi ve harf kombinasyonunun ANSI tarafından belirlenen kurallara göre yorumlanacak C dilinin özel bir karakterini temsil ettiğini göstermenin bir yoludur . Böylece bir "  bip  " sesi çıkarır . 'echo $'\a'

Aşağıdaki tablo bu özel karakterleri listelemektedir:

Egzoz
ters eğik çizgi
Bash dönüşümü
\ şurada Bip sesi
\ b Arka aralık
\ e Egzoz
\ f Sayfa sonu (bu karakterin İngilizce adı form beslemesidir )
\değil Satır sonu
\ r Satırbaşı
\ t Yatay sekme karakteri
\ v Dikey sekme karakteri
\\ Ters eğik çizgi
\ ' Bir kesme işareti (bu karakterin İngilizce adı tırnaktır )
\ nnn Sekizlik değeri nnn olan 8 bitlik karakter
\ xHH Onaltılık değeri HH olan 8 bitlik karakter
\ cx Kontrol-X karakteri

ASCII'ye bakın

Bash'in meta karakterlerinden birinin önündeki ters eğik çizgi

"*" (Yıldız) dahil olmak üzere metakarakterler Bash tarafından değişmez değerler olarak yorumlanmaz ve bu bazı durumlarda sakıncalıdır. Bul , sed komutları bu hassas noktayı örneklemektedir. Komutu kullanarak, find“. ", Ve alt dizinleri, adı" benim "ile başlayan tüm dosyalar, aşağıdaki komut satırını yazmak cazip find . -name my*gelecektir Find: Les chemins doivent précéder l'expression. Ancak komut geri dönecektir .

Aslında Bash, "my *" dizesini, findaranacak dosyaların adı olarak değil, önce belirtilmesi gereken yolların bir listesi olarak kabul edilen geçerli dizinde bulunan dosyaların listesiyle değiştirecektir.

Çözümlerden biri, "*" karakterinden önce bir ters eğik çizgi kullanmak ve bu karakterden kaçmak ve Bash'i onu birebir olarak yorumlamaya zorlamaktır. Hangi verir find . -name my\*.

Başka bir çözüm, alıntı kullanmak olabilir. Örneğin yazabilirizfind . -name "my*"

Süreç yönetimi

Emirler Operasyonlar Açıklamalar
A & A komutunu vererek ( konsola bağlı ) yeni bir işlem oluşturur ve diğer komutların aynı konsola girilmesine izin verir.
( A & ) Yukarıdaki komutla aynıdır, ancak bu sefer oluşturulan işlem konsoldan bağımsızdır .
A && B Mantıksal AND ( && ) , B Yürütme eğer A başarılı .

B eğer A Tamam

A || B Sadece B Yürütme eğer bir başarısız .

B, eğer A KO

A `B` dinamik parametreler A , B çalıştırmanın sonuçlarını kullanır
A $(B)

Akış yönetimi

Her sipariş üç akışla ilişkilendirilir:

  1. standart giriş (veya "  giriş  " veya hatta stdin ) (giriş 0);
  2. Standart çıkış (veya “  çıkış  ” ya da stdout'u ) (giriş 1);
  3. standart hata çıkışı ( stderr ) (giriş 2)

İsteğe bağlı olarak, ek dosya tanımlayıcıları bir komutla ilişkilendirilebilir.

Kullanım metodu:

Emirler Operasyonlar Açıklamalar
A > fichier çıkış ( > ) Bir komutun standart çıktısını (yönlendirme stdout'u kadar) dosyanın içeriğini üzerine yazarak ya oluşturarak dosyayı o yoksa
A >> fichier çıkış ( >> ) A komutunu yürütün ve standart çıktısını dosyanın sonuna yönlendirin
A 2> fichier çıkış ( 2> ) Bir komutu yürütün ve standart hata çıktı (yönlendirme stderr kadar) dosyanın içeriğini üzerine yazarak ya oluşturarak dosyayı o yoksa
A 2>> fichier çıkış ( 2 >> ) A komutunu yürütün ve standart hata çıktısını dosyanın sonuna yeniden yönlendirin
A 2>&1 çıktı ( 2> & 1 ) A komutunu yürütün ve standart hata çıktısını standart çıktısına yeniden yönlendirin
A < fichier giriş ( < ) Dosya içeriğini standart girdisinde ( stdin ) geçirerek A komutunu yürütün.
A | B çıkış, giriş ( | ) A'yı yürütün ve standart çıktısının içeriğini B'nin standart girişine gönderin

Girişin ve her iki çıkışın yeniden yönlendirilmesi

Kullanım

  • > bir komutun standart çıktısını ( stdout ) yeniden yönlendirmek için ;
  • 2> hata çıktı yönlendirmesi için ( stderr );
  • n> , n'inci dosya tanımlayıcısının yeniden yönlendirilmesine izin verir ;
  • &> standart çıktıyı ve hata çıktısını aynı anda yeniden yönlendirmek için.

Kabuk değişkenleri

Değişkenler, önlerinde $ işareti ile belirtilir (örnek echo $ HOME ).

Bazı ortam değişkenleri  : USER , PID , HOME , PATH ve SHELL .

Emirlerin ikamesi

Bir komut doğrultusunda, biz onun sonucu (içinde tarafından argüman olarak bir komut yerine Stdout'a ters tırnak ile onu çevreleyen yoluyla) `komut name` veya kullanarak $ () ( $ (komut adı) ).

İfade

Düzenli ifadeler veya düzenli ifadeler karakter dizeleri tanımlamak için kullanılan vardır. Bunlar arasında iki kategori ayırt edilebilir. Değişmezleri gibi tedavi edilen normal karakter, ve joker bir arama için anlama sahiptir sembollerdir. Zaten karakterlerin yukarıda tartıştık *ve ?. Aradığınız kalıbın açıklamasını daraltmak ve yerini belirtmek mümkündür.

Yani ^bir çizginin başlangıcını ve $sonunu temsil eder . Örneğin, ^terile başlayan terve ter$ile biten tüm satırları temsil eder ter.

Metakarakterler ayrıca karakter sınıflarını da temsil eder. Örneğin sci[ea]nce, parantezlerin içeriğinde mantıksal bir VEYA temsil eder. Temsil edilir scienceve sciance. Parantezleri kullanarak aralıkları tanımlamak da mümkündür, bir tire eklemelisiniz. Bu, [0-9]0'dan 9'a kadar olan tüm rakamlara, [a-z]tümü küçük harflere ve [A-Z]tümü büyük harflere eşittir . Köşeli parantez içinde birkaç karakter sınıfı birleştirilebilir: örneğin, bunu 0 ile 9 arasında bir sayı veya bir büyük harfle takip edilebileceğini epsilon[0-9A-Z]belirtir epsilon.

^ İçindeki köşeli parantezler olumsuzluk ifade eder. Yani [^eo]( ^ikinci karakter) ne "e" yi ne de "o" yu tanımlar.

Köşeli parantez içindeki ifadeler bir karakter dizisini tanımlamak için kullanılamaz, yalnızca tek bir karaktere karşılık gelir. Bir dizeyi tanımlamak için, normal bir alt ifade olan parantezleri kullanmalısınız. Tüp | daha sonra alternatifleri göstermektedir. lou(p|ch)eryanı loupersıra açıkladı loucher.

Emacs modunda klavye kısayolları

  • TAB  : imleç konumundan bir kelimeyi otomatik tamamla .
  • CTRL + a  : imleci satırın başına götürür ( başlangıç tuşuna eşdeğer ).
  • CTRL + c  : SIGINT sinyalini ön plandaki göreve gönderir , bu da onu kesintiye uğratır.
  • CTRL + d  : satırın başında mevcut kabuğu kapatır ( çıkış komutuna eşdeğer ). Bir komut başlangıcı girilmişse, imleci takip eden karakteri silin (silin).
  • CTRL + e  : ( end ) imleci satırın sonuna taşır ( bitirme tuşuna eşdeğer ).
  • CTRL + p  : ( önceki ) önceki komutu geri çağırır (yukarı ok tuşuna eşdeğer ).
  • CTRL + n  : ( sonraki ) sonraki komutu geri çağırır ( aşağı ok tuşuna eşdeğer ).
  • CTRL + r  : ( araştırma ), belirtilen karakterleri içeren son komutu geri çağırır ( vim ~ / .bash_history'ye eşdeğer ). Bir 2 nd CTRL + r aramada tekabül sonraki önceki komutu hatırlatır. CTRL + s  : aşağıdaki arama komutunu geri çağırır (bir terminalden çalıştırmamaya dikkat edin çünkü bu komut XOFF'u tetikleyecektir). CTRL + o  : aramada bulunan komutu çalıştırır.
  • CTRL + l  : ekranın içeriğini temizler ( temizleme komutuna eşdeğer ).
  • CTRL + u  : imleçten önceki satırın içeriğini temizler ve panoya yerleştirir .
  • CTRL + k  : imleçten sonraki satırın içeriğini temizler ve panoya yerleştirir.
  • CTRL + w  : Önündeki sözcüğün başlangıcındaki imlecin içeriğini temizler ve panoya yerleştirir.
  • CTRL + y  : ( yank ) panonun içeriğini imleç konumundan ekler.
  • CTRL + z  : SIGTSTP sinyalini , onu askıya alma etkisi olan ön plandaki göreve gönderir . Tekrar görüntülemek için fg 'işlem adı' girebilirsiniz .
  • CTRL + x CTRL + x  : (x çarpı şeklinde olduğundan) imleci eski konumuyla değiştirir.
  • CTRL + x CTRL + e  : ( düzenleyici , kabuktan $ EDITOR değişkenini alır) metin düzenleyicinizdeki geçerli satırı düzenler.
  • CTRL + _  : son değişikliği iptal eder.
  • ALT + f veya ESC + f  : ( ileri ) imleci bir sonraki kelimenin sonuna götürür.
  • ALT + b veya ESC + b  : ( geri ) imleci kendisinden önceki kelimenin başlangıcına götürür.
  • ALT + BS veya ESC + BS  : metni imlecin önündeki kelimenin başlangıcına kadar kesin.
  • ALT + d veya ESC + d  : metni, imleci takip eden kelimenin sonuna kadar kesin.
  • ALT + u veya ESC + u  : İmleci takip eden kelimenin sonuna kadar harfleri büyük harfe dönüştürür.
  • ALT + l veya ESC + l  : İmleci takip eden kelimenin sonuna kadar harfleri küçük harfe dönüştürür.
  • ALT + c veya ESC + c  : İmleçten başlayarak, bulunan sözcüğün sonuna kadar karşılaşılan ilk harfi büyük, ardından gelenleri küçük harfle yazın.
  • ALT + r veya ESC + r  : değişiklikleri iptal eder ve satırı geçmişte olduğu gibi sıfırlar.

Vi modunda klavye kısayolları

Vi modu komutla etkinleştirilir set -o vive tarafından devre dışı bırakılır set +o vi. Bir satırın başında, ekleme modundasınız , komut moduna geçmek için escape tuşuna basmanız gerekir .

İşte komutların bir özeti, tam bir açıklama için sayfa vi'ye gidin .

Yer değiştirme:

  • $: satırın sonuna gitmek için
  • ^: satırın başına gitmek için
  • j ve k: sonraki ve önceki komutu görüntülemek için
  • h ve l: imleci sola ve sağa hareket ettirmek için
  • w: imleci sonraki kelimenin ilk karakterine yerleştir
  • b: imleci önceki kelimenin ilk karakterine yerleştir

Aksiyon:

  • u: önceki eylemi iptal et
  • D: satırın sonunu imleçten sil
  • yy: geçerli satırı kopyala (ve arabelleğe kopyala)
  • dd: geçerli satırı sil (ve arabelleğe kopyala)
  • yw: arabellekte imleci takip eden kelimeyi kopyala
  • dw: imleci takip eden kelimeyi kes ve arabelleğe kopyala
  • y $: arabellekteki satırın sonundaki imlecin kopyası
  • d ^: Satırın başından imlece kadar sil ve arabelleğe kopyala
  • p: İmleçten sonra yapıştır
  • P: imleçten önce yapıştır
  • e: komut satırı düzenleyicisini çağırın, normalde vi veya vim
Editör modunda

Desen değişimi:

  • : s: bir karakter dizesini diğeriyle değiştirir. Örneğin,: s / önce / sonra / mevcut satırdaki "önce" sözcüğünü "sonra" sözcüğüyle değiştirir. Normal ifade biçimi perl biçimidir.
  • /: imleçten sonra bir karakter dizisi arar.

"N" tuşuna basmak, aramayı / ikameyi bir sonraki oluşumda tekrarlar, "N" ise önceki olay üzerinde tekrarlama / ikame yapmanıza izin verir.


Tekrarlama komutları:

  • : 33: imleci 33. satıra hareket ettirin.
  • 5x: mevcut karakteri 5 kez sil

Mevcut satırı düzenleme:

  • ESC: wq: çık ve kaydet.
  • ESC: q! : kaydetmeden çık

Ayrıca görün

İlgili Makaleler

Dış bağlantılar

Notlar ve referanslar

Notlar
  1. Sayfa sonu için bkz. ( İçinde ) Sayfa sonu
  2. (tr) bul
Referanslar
  1. Chet Ramey ( d ) , Bash-5.1 sürümü mevcut  " ,7 Aralık 2020(erişim tarihi 23 Aralık 2020 )
  2. Patch Bash ŞİMDİ: 'Shell Shock' hatası Linux'u patlatıyor, OS X sistemleri tamamen açık , The Register , 24 Eylül 2014
  3. Hızlı Referans Bash