NAME DESCRIPTION SHELL ARGUMEN DAN OPSI FASILITAS DI SHELL PADANAN PERINTAH DOS DI LINUX MANIPULASI FILE MANIPULASI DIREKTORI MANIPULASI DISK BEBERAPA PERINTAH LAIN BEBERAPA SHORTCUT BACAAN AUTHOR HISTORY --------------------------------------------------------------------------------- NAME dul4 - Perintah-perintah Unix yang sering dipakai ($Revision: 1.1.1.1 $) --------------------------------------------------------------------------------- DESCRIPTION Bagian ini menjelaskan beberapa perintah Unix yang penting untuk diketahui dan sintaks dasar command-line. Contoh-contoh perintah sebaiknya dicoba di depan komputer didampingi pelatih yang menjelaskan artinya. --------------------------------------------------------------------------------- SHELL Setelah login, shell akan dijalankan dan Anda akan dihadapkan pada prompt shell (atau, jika login dari X, akan dibukakan satu window terminal untuk mengetikkan perintah-perintah shell). Shell inilah, dan bukannya kernel, yang lebih banyak berhubungan dengan user. Anda mengetikkan perintah (menjalankan program, menjalankan script/kumpulan perintah, atau membuka shell baru) lewat prompt shell ini. Di Unix ada beraneka macam shell, dari ash hingga zsh. Tiap shell dapat memiliki sintaks yang mirip atau berbeda. Namun yang digunakan di Red Hat Linux adalah bash. bash merupakan shell yang pertama di-port, oleh Linus Torvalds sendiri, ke Linux. Di prompt shell Anda mengetikkan perintah, diikuti argumen. Misalnya: $ cd /nama/direktori Ada tiga macam perintah di shell: shell builtin (setara dengan ``internal command'' di COMMAND.COM DOS), executable program/script (setara dengan ``external command'' di DOS), dan alias. Perintah macam cd, jobs, bg, fg, exit adalah shell-builtin; perintah ini dilakukan oleh shell sendiri. Perintah lain seperti ls, cp, mv, atau fdformat adalah program. Program ini berupa file yang biasanya terletak di direktori bin/ atau sbin/. Shell sendiri adalah program. Anda dapat mengetahui letak suatu program dengan perintah whereis atau which: $ whereis ls $ which bash Program yang diketikkan untuk dijalankan harus terletak di salah satu direktori dalam daftar PATH (sama dengan guna PATH di DOS). Untuk melihat PATH Anda: $ echo $PATH $ printenv PATH Jika ingin menjalankan program di luar PATH (termasuk di direktori saat itu ./), Anda harus menyebutkan path-nya (baik path relatif maupun absolut). Contoh: $ /home/deni/bin/programku $ cd /home/deni $ bin/programku $ cd /home/deni/bin $ ./programku Seperti halnya di C, di Unix pun hampir semua string diperlakukan secara case-sensitive. Jadi, jika tertulis bahwa suatu perintah adalah anu, maka ANU dan Anu akan menghasilkan pesan kesalahan. Demikian pula dengan nama file. Kita dapat membuat dua file berbeda: anu atau ANU (atau Anu, aNu, dst). --------------------------------------------------------------------------------- ARGUMEN DAN OPSI Perintah-perintah Unix dapat diberi argumen dan opsi. Argumen adalah masukan bagi perintah, yang ditulis setelah nama perintah dipisahkan dengan spasi. Argumen bagi perintah untuk menyalin file misalnya, cp, adalah nama-nama file yang ingin disalin dan direktori tujuan: $ cp file1 file2 file3 tujuan/ atau $ cp * /home/deni Selain argumen biasa, terdapat pula opsi yang mengatur kelakuan atau bentuk keluaran suatu program. Opsi biasanya diawali dengan tanda - (untuk opsi satu huruf) atau tanda -- (untuk opsi panjang). (Bandingkan dengan perintah di DOS, yang biasanya menerima opsi berawalan garis miring, /.) Opsi biasanya diletakkan sebelum argumen biasa. Misalnya, untuk menghapus suatu direktori dan seluruh isi di dalamnya (termasuk subdirektori), berikan opsi -r pada perintah rm: $ rm -r /direktori/tertentu Untuk menampilkan isi direktori secara panjang (tiap nama file disertai ukuran, permission, tanggal, dan pemiliknya -- mirip dengan dir saja pada DOS, bukan dir /w), berikan opsi -l pada perintah ls: $ ls -l /usr/doc Opsi-opsi satu huruf biasanya dapat digabung. Contoh, opsi -R pada perintah ls menampilkan isi direktori dan semua subdirektori di bawahnya. Untuk melihat isi home direktori kita (/home/deni, atau dapat disingkat ~ saja), ketikkan: $ ls -l -R /home/deni atau $ ls -R /home/deni atau $ ls -lR ~ Contoh lain, opsi panjang --color untuk memberi penanda warna pada jenis file tertentu, dan -F untuk memberi penanda direktori/file executable: $ ls -lRF --color "/home/deni/direktori berspasi" Opsi tertentu dapat juga menerima argumen, yang diletakkan setelah opsi tersebut. Misalnya, perintah unzip dapat diberi opsi -d untuk menyatakan direktori tujuan bagi file-file hasil bukaan dari .zip: $ unzip -d /buka/ke/sini data.zip Nama direktori /buka/ke/sini merupakan argumen bagi opsi -d. Untuk mengetahui opsi apa saja yang tersedia dan bagaimana sintaks suatu perintah, gunakan perintah man (atau, terkadang, info). Banyak perintah yang dapat juga menampilkan pesan bantuan pendek jika diberi opsi -h atau --help. Lihat juga dul8. Contoh: $ tar --help $ man cpio $ info mknod $ man man --------------------------------------------------------------------------------- FASILITAS DI SHELL Dalam mengetikkan perintah, shell bash memberikan beberapa fasilitas yang mempermudah. Misalnya, Anda dapat memunculkan kembali perintah-perintah terakhir yang diketikkan (history) dengan menekan tombol panah atas-bawah. Anda pun dapat mengedit baris tersebut (misalnya, mengubah satu huruf kesalahan ketik perintah) lalu menekan Enter. Ada fasilitas lain yang disebut command completion dan filename completion. Anda cukup mengetikkan beberapa huruf awal dari suatu perintah atau nama file, maka shell akan mencarikan dan melengkapkan namanya untuk Anda. Misalnya, di direktori Di shell Unix pun dikenal karakter wildcard * dan ? (seperti di DOS, hanya saja lebih bagus, karena dapat diletakkan di tengah dan juga dapat digunakan untuk path): $ rm -f *.bak *.tmp *~ $ ls /home/deni/file*zip # grep -i 'PUSRI' * */* */*/* # ls -lR /home/*/public_html Untuk jelasnya -- termasuk keterangan tentang fasilitas lain seperti alias, job control, quoting, function, sintaks bahasa seperti for loop, case switch, dll -- buka manual dan dokumentasi bash. --------------------------------------------------------------------------------- PADANAN PERINTAH DOS DI LINUX Bagi Anda yang sebelumnya menggunakan DOS/Windows, berikut beberapa padanan perintah DOS di Linux (dikutip dari DOS-Win-to-Linux-HOWTO): DOS Linux Catatan ----------------------------------------------------------------------- ATTRIB (+-)atr file chmod file jauh berbeda BACKUP tar -Mcvf device dir/ jauh berbeda CD namadir\ cd namadir/ sintaks mirip COPY file1 file2 cp file1 file2 sintaks mirip DEL file rm file sintaks mirip DELTREE namadir rm -R namadir/ sintaks mirip DIR ls tidak 100% setara DIR file /S find . -name file jauh berbeda EDIT file vi file editor primitif pico file mungkin lebih cocok joe file perintah mirip Wordstar FORMAT fdformat, mount, umount sintaks cukup berbeda HELP perintah man perintah, info perintah sama dalam prinsip MD namadir mkdir namadir/ sintaks mirip MORE < file less file jauh lebih bagus MOVE file1 file2 mv file1 file2 sintaks mirip NUL /dev/null PRINT file lpr file PRN /dev/lp0, /dev/lp1 RD namadir rmdir namadir/ sintaks mirip REN file1 file2 mv file1 file2 tidak menerima wildcard RESTORE tar -Mxpvf device sintaks berbeda TYPE file less file jauh lebih bagus WIN startx jauh, jauh berbeda! --------------------------------------------------------------------------------- MANIPULASI FILE Untuk melihat isi file: $ cat namafile $ cat namafile | more $ cat namafile | less $ less < namafile $ less file1 file2 file3 Tekan q untuk keluar dari less atau more. Untuk membuat sebuah file kosong: $ touch namafile touch juga dapat digunakan untuk mengubah tanggal modifikasi file yang sudah ada menjadi tanggal saat ini. Untuk menyalin suatu file ke file atau direktori lain (jika file yang ingin disalin lebih dari satu, argumen terakhir haruslah direktori): $ cp file1 file2 $ cp file1 file2 file3 dir $ cp *.bak /home/deni/bak $ cp data/file1.txt data2/file1.txt data3/file1.txt tujuan/ $ cp -R dir1 dir2 Untuk memindahkan (atau me-rename) file dan direktori, gunakan perintah mv sebagai ganti cp: $ mv namalama namabaru $ mv namadirlama/ namadirbaru/ $ mv file1 file2 file3 ~/dir/lain/ Untuk menghapus file: $ rm namafile $ rm *.bak $ rm -r namadir Untuk mengetikkan isi file (seperti copy con namafile di DOS): $ cat > namafile ini baris 1... ini baris 2... ini baris terakhir... (tekan Ctrl-D) Untuk mengedit file, gunakan satu dari banyak editor yang tersedia: vi, vim, joe, pico, jed, emacs, gnotepad, dll. --------------------------------------------------------------------------------- MANIPULASI DIREKTORI Membuat direktori: $ mkdir namadir $ mkdir namadir1 namadir2 namadir1/sub1 namadir1/sub2 Menghapus direktori (direktori harus kosong sebelum dihapus, kecuali jika digunakan rm -r): $ rmdir namadir $ rm -r namadir Berpindah direktori: $ cd namadir $ cd .. $ cd / # cd ~ftp Mengetahui lokasi direktori saat ini: $ pwd Melihat isi direktori: $ ls namadir $ ls -l namadir1 namadir2 $ ls -lR /usr/doc ls -lR mirip dengan dir /s di DOS. Jika tampilan direktori lebih dari selayar, Anda dapat melihat tulisan yang terlewat dengan Ctrl-PageUp dan Ctrl-PageDown. Atau, gunakan filter less: $ ls -l | less Perintah terakhir mirip dengan dir /p di DOS. File-file tertentu, yaitu yang namanya dimulai dari titik (dotfiles), umumnya tak dapat dilihat kecuali dengan opsi -a pada perintah ls. File-file ini juga tidak tesertakan dengan wildcard *. Untuk menyertakannya, gunakan wildcard .* (titik-bintang). File-file yang berawalan titik bisa disebut hidden files. Biasanya file-file konfigurasi adalah dotfiles. $ ls -al $ rm * .* Mencari file berdasarkan kriteria tertentu di suatu direktori: $ find ./ -name "*~" # find / -type f -size +1000 $ find /usr/man | less --------------------------------------------------------------------------------- MANIPULASI DISK Menyalin isi suatu disk ke file (disk image): # dd if=/dev/fd0 of=namafile Menyalin balik isi disk image ke disk: # dd if=namafile of=/dev/fd0 Memformat disket dengan filesystem Linux: # fdformat /dev/fd0H1440 Melihat dan memanipulasi isi disket DOS: # mdir a: # mcopy *.txt a: # mdel a:*.bak # mformat a: Lihat juga cara mount/unmount di dul5. --------------------------------------------------------------------------------- BEBERAPA PERINTAH LAIN Menjadi root tanpa harus logout terlebih dahulu: $ su - (Masukkan password root) # su - deni Keluar dari shell atau dari su: $ exit $ logout Membuat, mengekstraksi, dan melihat isi archive tarball (seperti zip di DOS): $ tar cfz namaarchive.tar.gz namadir/ $ tar xfz namaarchive.tgz $ tar tfz namaarchive.tgz Login ke komputer Unix lain melalui telnet: $ telnet nomor.ip.yang.dituju $ telnet 127.0.0.1 Membuat symbolic link (link): $ ln -s target namalink Membaca dan mengirimkan email: $ pine Browser: $ lynx $ lynx http://www.pusri.net/ $ lynx /usr/doc atau, jika X telah berjalan: $ netscape Shell berbasis menu yang mirip dengan Norton Commander di DOS: $ mc Utilitas konfigurasi sistem: # linuxconf atau, di X/Gnome: # gnome-linuxconf Lihat juga dul5 dan dul6. --------------------------------------------------------------------------------- BEBERAPA SHORTCUT Untuk melakukan ini Biasanya Dapat juga (cara lebih singkat) ------------------- -------- ------------------------------- menyebutkan home /home/user ~ (jika home sendiri) atau direktori ~user (jika home orang lain) keluar dari shell exit menekan Ctrl-D pindah ke direktori cd - sebelumnya membersihkan layar clear menekan Ctrl-L pause tampilan menekan Ctrl-S unpause menekan Ctrl-Q berpindah ke virtual menekan Alt-F1 .. F6, atau console lain Ctrl-Alt-F1 .. F6 (jika dari X) keluar dari X menekan Ctrl-Alt-Backspace mengganti resolusi menekan Ctrl-Alt-plus atau di X Ctrl-Alt-minus (tombol abu-abu) --------------------------------------------------------------------------------- BACAAN Red Hat Linux Getting Started Guide Linux Installation and Getting Started> (install-guide), bagian dari LDP HOWTO: DOS-to-Linux-HOWTO dan DOS-Win-to-Linux-HOWTO --------------------------------------------------------------------------------- AUTHOR Steven Haryanto . Kirimkan kritik dan masukan lewat email. --------------------------------------------------------------------------------- HISTORY Pertama dibuat sebagai materi pelatihan staf Lahta Pusri di Teknik Kimia ITB, Bandung, Mei 1999. 2 Apr 2001. Perbaikan typo ~/user menjadi ~user. Thanks to hendrasahir at yahoo.com.