My First Time with Awk

Tonight we’ll talk about Awk. Actually, I’ve know it for a long time but I never had any chance to explore it. A few days ago, I need to remove some duplicate lines from a file BUT it should not be sorted. We can also use sort and uniq, but it will end up sorted before we got an actual result. I’m using this kind of script to remove it: [Read More]

Starting Screen in Detach Mode

For a few days I’ve been thinking about GNU/screen. I have some scripts that should be run inside screen everytime a reboot happened. I’ve been looking in stackoverflow, google, etc but haven’t found anything useful. So I’ve been stuck with this kind of script: $ screen -dmS screen_name some_command It will create a new screen, run the command inside it and detach the screen. Well, it’s pretty good actually. But, when the command is done (finished or killed) then the screen will be terminated. [Read More]

Untracking The Tracked Ones

Sudah beberapa hari saya mempunyai keinginan untuk memperbaiki projek yang saya lakukan. Secara tidak sengaja saya memasukkan virtual environment ke dalam repositori yang notabene seharusnya hanya diisi oleh projek yang saya kerjakan. Alhasil banyak sekali perubahan setiap saya mencoba mengerjakan kembali (bahkan) ketika saya tidak mengubah apapun. Berikut cara yang saya temukan untuk meng-untrack file / folder yang sudah di-track: $ git rm --cached -r env Setelah itu, folder tersebut bisa kita masukkan ke dalam file . [Read More]

Editing Stream like Merlin The Mighty with Sed

We already talk about Vim a couple of time. Let’s move to sed. Sed is a stream editor (we already know that) that I used today. This is the case, I have some file (php file) which is badly written by someone (maybe for pissing me off) by changing some characters on it. Let’s say they change *.php into .rrrr wherever possible. It’s not a big deal if the file is only have a few lines, but imagine if it has 2000 lines and I should edit every . [Read More]

Menghapus baris di Vim - 2

Case Terkadang kita ingin menghapus baris-baris tertentu yang hanya mengandung kata-kata yang spesifik. Contohnya jika ingin menghapus log tetapi menyisakan baris yang mengandung kata warning atau error atau lainnya. Solution Ada 2 ex command yang dapat kita gunakan yang berhubungan dengan masalah tersebut. 1. :g/{pola yang ingin dicari}/{perintah yang ingin dijalankan setelah pola ditemukan} 2. :v/{pola yang tidak ingin dicari}/{perintah yang ingin dijalankan setelah pola ditemukan} Example 1. Untuk menghapus setiap baris yang mengandung pola "warning" kita bisa menggunakan: :g/warning/d 2. [Read More]

Menghapus baris di Vim - 1

Case Terkadang kita perlu menghapus beberapa baris secara berurutan dan secara spesifik. Contohnya adalah jika kita ingin menghapus 491 baris dari baris ke 105. Seperti yang kita tahu, kita bisa menggunakan dd untuk menghapus 1 baris di Vim. Tapi bagaimana untuk kasus di atas? Mengutip dari suatu blog, penggunaan Vim itu seperti kita berbahasa (thanks for Daniel Miessler for your awesome post). Caranya seperti berikut: Solution 1. 491dd = menghapus 491 baris ke bawah dengan syarat posisi kita harus ada di baris 105 2. [Read More]

Mengurutkan isi file menggunakan Sort

Saya rasa kita semua pernah merasa kesulitan dalam mengurutkan sesuatu. Beberapa waktu yang lalu saya ingin mengurutkan id yang akan saya olah yang sumbernya terdapat dari 2 file. Untuk kasus ini saya menggunakan sort, saya rasa tidak ada yang lebih mudah dari sort untuk melakukan proses ini melalui command line. sort image Kita bisa menggunakan parameter -m untuk melakukan merging ataupun langsung mengarahkan keluarannya ke file yang lain menggunakan simbol >. [Read More]

Pairing Logitech Devices With Solaar

A few minutes ago, a friend of mine shared something good on facebook. He use Solaar to get battery information from his Logitech mouse. So, what is Solaar? Quoted from Solaar website: "Solaar is a Linux device manager for Logitech's Unifying Receiver peripherals." It gives you information about your device’s technical detail like Wireless PID, Protocol, Polling Rate, Serial number, even your device’s firmware. And of course, it gives battery information. [Read More]

Menukar Fungsi Tombol Mouse atau Touchpad

Mungkin ini terdengar aneh, tetapi saya mempunyai kebiasaan untuk menukar fungsi tombol yang ada di mouse walaupun sebetulnya saya bukan left-handed. Untuk menukar fungsi tombol yang ada di mouse kita bisa menggunakan perintah berikut: $ xmodmap -e "pointer = 3 2 1" Ada masalah yang muncul jika kita menggunakan perintah di atas. Masalahnya adalah perintah tersebut akan menukar fungsi mouse secara umum, maksudnya adalah touchpad yang juga bisa digunakan selain mouse akan tertukar. [Read More]

Grep for The World

Pernahkah kalian merasa kesulitan saat ingin mencari sebuah file yang kalian tidak tahu nama file-nya tetapi (sedikit) tahu apa isinya? Untuk mencari file yang misterius seperti ini kita bisa menggunakan grep. Berikut adalah contoh grep yang baru saja saya gunakan: $ grep -r -i "INSERT INTO news" *.py Perintah di atas berguna untuk mencari file berakhiran “.py” yang di dalamnya mengandung kalimat “INSERT INTO news”. Opsi “-r” akan membuat grep dapat mencari file tersebut secara rekursif pada folder tersebut. [Read More]