ubah opsi perintah default

15

Ketika saya memasukkan perintah

ls

Saya melihat daftar file dan direktori di direktori saat ini, daftar yang ditampilkan cukup mengganggu.

Sebaliknya, saya suka menjalankan perintah ls dengan -1 opsi suka

ls -1

Pertanyaan saya adalah bagaimana mengubah perilaku default dari perintah ls sehingga akan selalu dijalankan dengan opsi -1. yaitu cara menampilkan file dan direktori dalam satu kolom dengan perintah ls.

Terima kasih.

hrishikeshp19
sumber

Jawaban:

14

Salah satu caranya adalah dengan membuat alias di ~/.bashrcfile Anda :

alias l1='ls -1'

maka dengan mengetik l1, ls -1akan dieksekusi

zetah
sumber
Bagaimana Anda menemukan file ~ / .bashrc? Saya menemukan aplikasi "bash" di Computer \ bin, tetapi bukan file teks dengan nama yang Anda sebutkan.
AlainD
@AlainD file .bashrc ada di direktori home Anda, bukan di / bin. The ~ memperluas ke direktori home Anda di bash, jadi path akan membaca sesuatu seperti
home
Saya menggunakan alias lsl = "ls-l" karena saya tidak harus pindah dari baris home untuk memasukinya.
dvnkiss
4

Di direktori Beranda Anda, buka file .bashrc di editor dan tambahkan alias ls = 'ls -1' .

Pertama buka terminal (Tekan ControlAltT), masukkan gedit ./.bashrcuntuk membuka file .bashrc Anda di editor.

Temukan bagian yang memiliki beberapa alias untuk ls. Di tambang (stok 11.10) sepertinya:

# some more ls aliases
alias ll='ls -alF'
alias la='ls -A'
alias l='ls -CF'

Tambahkan baris berikut setelah alias ls:

alias ls='ls -1'

Simpan file, keluar dari gedit dan terminal dan reboot. Sekarang perintah ls harus menjalankan ls -1 secara default.

James
sumber
1
Ini mendefinisikan "ls" untuk sekarang beroperasi sebagai "ls -1" secara default untuk pengguna ini. Jika Anda lebih suka menggunakan perintah baru, maka jawaban @zetah mencakup hal itu.
James
Dalam direktori Beranda saya di uBuntu 14.04 LTS saya hanya melihat banyak folder, dan tidak ada file .bashrc.
AlainD
1

Jawaban zetah adalah yang terbaik. Untuk menguraikan:

Alias ​​paling baik digunakan untuk modifikasi pendek, sederhana, dan sering digunakan pada parameter perintah standar. Mereka disimpan dalam memori (setelah dibaca dari file sumbernya), untuk kinerja yang lebih baik atau penggunaan berulang.

Fungsinya sesuai untuk aktivitas yang lebih kompleks yang sering digunakan, dan juga disimpan dalam memori.

Script cocok untuk perintah yang paling kompleks dan paling jarang digunakan.

Lihat pertanyaan dan jawaban ini di unix stackexchange - menjelaskan perbedaan dalam penggunaan terbaik antara alias, fungsi, dan skrip.

RobDavenport
sumber
1

Hanya untuk mengklarifikasi sesuatu ke jawaban @RobDavenport. Anda tidak dapat menggunakan fungsi untuk mengganti perintah yang memiliki nama yang sama.

misalnya untuk menambahkan param default ke lsperintah yang dapat Anda lakukan:

alias ls='ls -1 $@'

Ini akan menambahkan alias baru yang dipanggil lssehingga akan dipanggil alih-alih perintah asli. Ini akan menambahkan -1opsi dan meneruskan setiap parameter $@ke lsperintah asli .

Anda juga bisa melakukannya

function ls_column () {
  ls -1 $@
}

Ini akan memiliki efek yang sama tetapi Anda harus menggunakan nama yang berbeda untuk fungsi Anda. Kalau tidak, itu akan menyebut dirinya lagi dan lagi.

Tim
sumber