Bagaimana saya bisa merekam perintah Linux?

9

Apakah ada cara untuk merekam perintah Linux yang saya gunakan dan menggunakannya kembali di komputer lain atau kalau-kalau saya ingin menginstal ulang mesin?

Dalam contoh, rekam bagaimana saya mengatur NginX, PHP dan izin di lingkungan lab saya dan kemudian mengulangi perintah yang tepat pada mesin deploy saya?

Jonas
sumber

Jawaban:

19

Sepertinya saya ingin skrip (1) .

Ini memungkinkan Anda untuk merekam dan memutar ulang sesi terminal.

Di sisi lain, jika Anda mencoba mengotomatiskan pengaturan, pertimbangkan manajemen konfigurasi, seperti boneka .

PTman
sumber
Terima kasih untuk Wayang, ini terlihat bagus. Saya akan membaca lebih lanjut tentang itu.
Jonas
1
+1 untuk Wayang. Ini adalah cara yang jauh lebih baik daripada hanya merekam perintah shell.
EEAA
+1. cfengine adalah pesaing Puppet, juga
gWaldo
2

Dua cara yang bisa saya pikirkan dari atas kepala saya:

  • Gunakan riwayat perintah builtin

  • Lakukan semuanya dalam sesi layar dan aktifkan pencatatan

Eddy
sumber
2

Bash merekam perintah dalam file bernama ~ / .bash_history. Ini berfungsi jika Anda melakukan semuanya melalui baris perintah, dan dalam satu jendela perintah.

Berhati-hatilah, itu membatasi ukuran file itu ke 1000 (secara default) perintah terbaru.

Kevin M.
sumber
0

coba ini

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

# date

Rajat
sumber
Dia mengarahkan scriptoutput ke file tertentu. Penamaannya tidak biasa, tetapi mungkin diekstraksi dari skrip shell yang lebih besar mungkin.
mctylr
1
Ini $(uname -n)ditafsirkan oleh baris perintah untuk menjalankan unameperintah dengan -nbendera untuk mencetak nama host sistem.
mctylr
0

Saya pikir Anda juga bisa menggunakan autoexpect untuk tugas ini.

Anonim
sumber
Saya mendapat "perintah tidak ditemukan" di Ubuntu ketika saya mencobanya.
Jonas
1
Saya pikir itu akan menjadi bagian dari paket Harapkan yang mungkin tidak diinstal secara default. Ref: linuxjournal.com/article/3065
mctylr
0

Biasanya saya menggunakan perintah suka history > ~/tmp/hhmenyimpan file histori. Kemudian saya gunakan vi, melompat ke bawah dengan perintah G dan kemudian mencari ke atas sampai saya menemukan bagian yang akan dekat dengan titik masuk yang berguna ke dalam skrip. Dari sana saya pingsan keluar lsperintah asing , menggabungkan serangkaian incremental cdke direktori, menambahkan komentar, dan mulai mencari tahu bagian mana yang perlu argumen, yang mana yang mungkin harus menjadi pengaturan lingkungan dan mana yang harus dikodekan. Saya menambahkan banyak komentar. Kadang-kadang saya "menyepak" pada bagian-bagian yang mengotomatiskannya dan hanya memberi pengguna beberapa instruksi (pergi mencari pengaturan ini, sshuntuk foo dan ..., batalkan komentar blah dari file ini dan pindahkan ke blarg) atau echoURL ... dan prompt string seperti: 'Foo Dikonfigurasi dan keluar>'

(Ketika Anda menyadap edit file otomatis ... Saya sarankan menambahkan kode instruktif ke file, sebagai komentar, dan menggunakan sesuatu seperti saklar baris perintah vi + untuk meletakkan kursor editor di dekat bagian bawah file, di bagian atas instruksi Anda. Misalnya dengan 5 baris teks instruktif (di sini doc misalnya) Anda akan menambahkan '+$-5'ke vibaris perintah, sebelum nama file. ( $-5adalah exmantra lama untuk mengatasi baris terakhir file, minus lima baris; yang relatif tidak jelas +beralih ke vimenerima setiap ex... : perintah ... sebagai argumen).

Trik lain ... dengan asumsi Anda melakukan sebagian besar pekerjaan Anda dari terminal X Windowing System ( xterm, konsole, gnome-terminal, dll) kemudian terus browser terbuka pada beberapa halaman wiki sebagai Anda pergi. Memotong dan melewati perintah, output, potongan file teks dan menuliskan catatan saat Anda pergi. (Ini kebanyakan mengasumsikan Anda sebagian besar bekerja pada server sshAnda dari workstation, desktop, laptop, atau apa pun).

Hemat lebih awal dan sering.

Buat halaman wiki baru untuk berbagai proses atau tahapan. Kemudian tautkan bersama-sama dan tautkan ke referensi apa pun di internet. (Anda tahu, semua halaman Google yang Anda gunakan setiap kali Anda macet kapan saja).

Beberapa dokumen HOWTO terbaik saya telah dibuat dengan cara ini.

Jika Anda melakukannya dengan benar maka Anda mungkin bisa mendapatkan pekerjaan dari piring Anda dengan cara lama, dengan mendelegasikan kepada anggota tim junior ... atau magang yang bersemangat. :)

Jim Dennis
sumber