zmień domyślne opcje poleceń

15

Kiedy wprowadzę polecenie

ls

Widzę listę plików i katalogów w bieżącym katalogu, wyświetlana lista jest dość denerwująca.

Raczej lubię wykonywać polecenie ls z opcją -1 podobną

ls -1

Moje pytanie brzmi: jak zmienić domyślne zachowanie polecenia ls, tak aby zawsze działało z opcją -1. tzn. jak wyświetlać pliki i katalogi w jednej kolumnie za pomocą polecenia ls.

Dzięki.

hrishikeshp19
źródło

Odpowiedzi:

14

Jednym ze sposobów może być utworzenie aliasu w ~/.bashrcpliku:

alias l1='ls -1'

następnie przez pisanie l1, ls -1będą realizowane

zetah
źródło
Jak znaleźć plik ~ / .bashrc? Znalazłem aplikację „bash” w Computer \ bin, ale nie ma pliku tekstowego o podanej nazwie.
AlainD
@AlainD plik .bashrc znajduje się w twoim katalogu domowym, a nie w / bin. ~ Rozwija się do twojego katalogu domowego w bash, więc ścieżka będzie czytać coś w stylu /home/user/.bashrc
Jishnu
Używam aliasu lsl = "ls -l", ponieważ nie muszę przechodzić z wiersza głównego, aby go wprowadzić.
dvnkiss,
4

W swoim katalogu domowym otwórz plik .bashrc w edytorze i dodaj alias ls = 'ls -1' .

Najpierw otwórz terminal (naciśnij ControlAltT), naciśnij klawisz Enter, gedit ./.bashrcaby otworzyć plik .bashrc w edytorze.

Znajdź sekcję zawierającą aliasy dla ls. W kopalni (stan 11.10) wygląda to tak:

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

Dodaj następujący wiersz po aliasach ls:

alias ls='ls -1'

Zapisz plik, zamknij gedit i terminal i uruchom ponownie. Teraz polecenie ls powinno domyślnie wykonać ls -1.

James
źródło
1
To redefiniuje „ls”, aby teraz domyślnie działał jako „ls -1” dla tego użytkownika. Jeśli wolisz użyć nowego polecenia, odpowiedź @zetah obejmuje to.
James
W moim katalogu domowym na uBuntu 14.04 LTS widzę tylko kilka folderów i brak pliku .bashrc.
AlainD
1

Odpowiedź Zetah jest najlepsza. Opracować:

Aliasy najlepiej nadają się do krótkich, prostych, często używanych modyfikacji domyślnych parametrów poleceń. Są one przechowywane w pamięci (po odczytaniu z pliku źródłowego), dla lepszej wydajności lub powtarzalnego użytkowania.

Funkcje są odpowiednie dla bardziej złożonych działań, które są często używane, a także przechowywane w pamięci.

Skrypty są odpowiednie dla najbardziej złożonych i najrzadziej używanych poleceń.

Zobacz to pytanie i odpowiedzi na temat wymiany stosów uniksowych - wyjaśnia różnicę w najlepszym użyciu między aliasami, funkcjami i skryptami.

RobDavenport
źródło
1

Aby wyjaśnić coś w odpowiedzi na @RobDavenport. Nie można użyć funkcji do zastąpienia polecenia o tej samej nazwie.

np. aby dodać domyślny parametr do lspolecenia, które możesz wykonać:

alias ls='ls -1 $@'

Spowoduje to dodanie nowego aliasu o nazwie, lsdlatego zostanie on wywołany zamiast oryginalnego polecenia. Doda to -1opcję i przekaże każdy parametr $@do pierwotnego lspolecenia.

Ty też możesz to zrobić

function ls_column () {
  ls -1 $@
}

Miałoby to ten sam efekt, ale musisz użyć innej nazwy dla swojej funkcji. W przeciwnym razie będzie się ciągle nazywać.

Tim
źródło