Linux komutlarını nasıl kaydedebilirim?


9

Kullandığım Linux komutlarını kaydetmenin ve başka bir makinede yeniden kullanmanın veya makineyi yeniden yüklemek istediğimde kullanmanın bir yolu var mı?

Örneğin, laboratuvar ortamımda NginX, PHP ve izinleri nasıl ayarladığımı kaydedin ve ardından dağıtım makinemdeki komutları tekrarlayın?

Yanıtlar:


19

Bana senaryo (1) istediğin gibi geliyor .

Terminal oturumlarını kaydetmenizi ve tekrar oynatmanızı sağlar.

Öte yandan, kurulumları otomatikleştirmeye çalışıyorsanız, kukla gibi yapılandırma yönetimini düşünün .


Kukla için teşekkürler, iyi görünüyor. Bununla ilgili daha fazla bilgi vereceğim.
Jonas

1
Kukla için +1. Bu, kabuk komutlarını kaydetmekten çok daha iyi bir yoldur.
EEAA

+1. cfengine ayrıca Kukla'nın da rakibi
gWaldo


2

Bash, komutları ~ / .bash_history adlı bir dosyaya kaydeder. Bu, her şeyi bir komut satırı üzerinden ve bir komut penceresinde yaparsanız çalışır.

Bununla birlikte, bu dosyanın boyutunu en son 1000 (varsayılan olarak) komutla sınırlar.


0

bunu dene

script / tmp / it356658 - $ (uname -n) .out

# tarih


Çıktısını scriptbelirli bir dosyaya yönlendiriyor. Adlandırma olağandışıdır, ancak büyük olasılıkla daha büyük bir kabuk komut dosyasından çıkarılmıştır.
mctylr

1
$(uname -n)Çalıştırmak için komut satırından tarafından yorumlanır unameile komutu -nsistemin makine adını yazdırmak için bayrak.
mctylr

0

Bu görev için otomatik beklemeyi de kullanabileceğinizi düşünüyorum .


Denediğimde Ubuntu'da "komut bulunamadı" var.
Jonas

1
Ben varsayılan olarak yüklenmemiş olabilir Expect paketinin bir parçası olacağını düşünüyorum. Referans: linuxjournal.com/article/3065
mctylr

0

Normalde history > ~/tmp/hhbir geçmiş dosyasını kaydetmek gibi bir komut kullanıyorum . Daha sonra kullanıyorum vi, G komutuyla alta atlıyorum ve sonra bir betiğe yararlı bir giriş noktasının yakınında olacak parçayı bulana kadar yukarı doğru arama yapıyorum. Oradan ls, yabancı komutları daraltırım , artımlı dizileri cddizinlerde birleştirir , yorum eklerim ve hangi parçaların argüman olması gerektiğini, hangi şeylerin ortam ayarları olması ve hangi şeylerin kodlanması gerektiğini bulmaya başlarım. Çok sayıda yorum ekliyorum. Bazen otomatikleştirme bölümleri üzerinde "punt" ve sadece kullanıcıya bazı talimatlar vermek (bu ayarı bulmak sshiçin foo ve ..., bu dosyadan blah uncomment ve blarg taşımak) veya echobir URL ... ve istemi string gibi: 'Configured Foo and exit>'

(Otomatik bir dosya düzenlemesine göz attığınızda ... Öğretici kodu dosyaya yorum olarak eklemenizi ve editörün imlecini dosyanın altına yakın bir yere koymak için vi + komut satırı anahtarı gibi bir şey kullanmanızı öneririm Örneğin , komut satırına dosya adından önce 5 satır öğretici metin ( örneğin burada doc ) eklersiniz . ( dosyanın son satırını, eksi beş satırını adreslemek için eski bir adımdır; herhangi bir ... : komutunu bağımsız değişken olarak kabul eden nispeten belirsiz anahtar ).'+$-5'vi$-5ex+viex

Başka hile ... Bir X Windowing Sistemi terminalinden (adresinin işlerin çoğunu yapmak varsayarak xterm, konsole, gnome-terminalo zaman gitmek gibi bazı wiki sayfalarında açık bir tarayıcı tutmak, vs). Metin dosyalarının komutlarını, çıktılarını, snippet'lerini kesin ve geçmişteki ve notlarınızı not alın. (Bu çoğunlukla sunucularınızda sshiş istasyonunuzdan, masaüstünüzden, dizüstü bilgisayarınızdan veya başka bir şeyden çalıştığınızı varsayar ).

Erken ve sık sık tasarruf edin.

Farklı işlemler veya aşamalar için yeni wiki sayfaları oluşturun. Sonra bunları birbirine bağlayın ve 'net' üzerindeki tüm referanslara bağlantı verin. (Bilirsiniz, herhangi bir noktada takıldığınızda kullandığınız tüm Google sayfaları).

En iyi NASIL belgelerimden bazıları bu şekilde oluşturuldu.

Doğru yaparsanız, genç takım üyesine veya istekli stajyere devrederek işi eski moda bir şekilde plakadan çıkarabilirsiniz. :)

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.