Skip navigation

Tag Archives: linux

Developer pasti pernah mendengar yang namanya linux. Dan arguebly, pernah menggunakan command line linux. Web developer pun mungkin di suatu waktu perlu me-restart, mengcopy, memindahkan atau me-rename nama di server webnya yang ber-OS linux.

Oleh karena itu, penting untuk setiap developer mengetahui perintah command line berikut:

  • vim/nano. Memunculkan text editor. Penting untuk meng-edit suatu file
  • mv. Memindahkan file/folder dari satu path ke path lain. Bisa juga untuk me-rename suatu file
  • rm. Mendelete file/folder. Hati-hati untuk tidak tertukar dengan mv
  • cd. Pindah direktori
  • ls. Memunculkan daftar file dan folder di suatu path
  • pwd. Memunculkan current path
  • scp. Perintah untuk mengcopy suatu file/folder dari 1 mesin ke mesin lain dalam 1 jaringan. Via internet juga bisa, selama bisa diakses
  • ps. untuk melihat proses apa yang sedang berjalan
  • man. Manual untuk perintah-perintah command line
  • cat. menampilkan isi suatu file text

berikut adalah perintah yang paling sering digunakan sebagai tambahan perintah diatas yang di pipe-ing.

  • grep. grep ini merukan pattern searcher / filter dari perintah. misalnya digunakan ls | grep doc, maka yang muncul hanyalah file/ folder yang memiliki subsequence doc.
  • less. perintah agar hasil dari perintah pertama cukup untuk layar yang ada. Misalnya hasil dari ps sampai berhalaman-halaman, dengan ps | less maka yang cukup untuk 1 halaman. untuk halaman selanjutnya, dapat dilihat dengan menekan page down atau bawah.

Sebenarnya masih banyak perintah yang sangat bermanfaat seperti screen, find, locate, netsat, telnet dan lain-lain.

Code berikut merupakan source code dari kelas hashmap yang dapat digunakan baik windows maupun linux, hehehehe

//file HashMap.h
#ifndef HASH_MAP
#define HASH_MAP

#ifdef WIN32
#include <hash_map>
#define hashmap stdext::hash_map

#else
#include <ext/hash_map>
#define hashmap __gnu_cxx::hash_map

#endif

#endif

sebenarnya hashmap bukan sebuah kelas, hanya alias aja untuk stdext::hash_map di windows atau __gnu_cxx::hash_map untuk linux.  Source diatas dapat digunakan untuk kode yang ada posting ini sebagai contoh penggunaan. Tinggal include aja file HashMap.h di file apapun, dan hashmap langsung dapat digunakan seperti container STL lainnya.

Untuk full compatibility antara windows dan linux, terdapat beberapa hal yang perlu diperhatikan:

  • Gunakan tipe dasar sebagai key dan value
  • Jika ingin menyimpan tipe bentukan ato object, gunakan pointer terhadap tipe/object tersebut
  • Khusus untuk string, akan bermasalah di linux, jadi gunakan const char* saja. Mengubah std::string ke const char* tinggal memanggil fungsi c_str(). Untuk sebaliknya cukup dengan std::string(/*si const char**/)

Sebenarnya banyak implementasi HashMap diluar sana yang independent dan full featured. Ini hanya pembungkus dari hashmap bawaan untuk mengatasi masalah kompatibilitas, karena di windows dan linux berbeda. Semoga bermanfaat, hehe.

Follow

Get every new post delivered to your Inbox.