изменить параметры команды по умолчанию

10

Когда я вхожу в команду

ls

Я вижу список файлов и каталогов в текущем каталоге, отображаемый список довольно раздражает.

Скорее, мне нравится выполнять команду ls с параметром -1, например

ls -1

Мой вопрос заключается в том, как изменить поведение по умолчанию команды ls таким образом, чтобы она всегда выполнялась с параметром -1. например, как отображать файлы и каталоги в одном столбце с помощью команды ls.

Спасибо.

    
задан hrishikeshp19 13.02.2012 в 02:52
источник

4 ответа

9

Один из способов - создать псевдоним в файле ~/.bashrc :

alias l1='ls -1'

, затем, набрав l1 , будет выполняться ls -1

    
ответ дан zetah 13.02.2012 в 02:59
источник
2

В вашем домашнем каталоге откройте файл .bashrc в редакторе и добавьте alias ls = 'ls -1' .

Сначала откройте терминал (нажмите Control Alt T ), введите gedit ./.bashrc , чтобы открыть файл .bashrc в редакторе.

Найдите раздел, в котором есть некоторые псевдонимы для ls. В шахте (запас 11.10) это выглядит так:

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

Добавьте следующую строку после псевдонимов ls:

alias ls='ls -1'

Сохраните файл, выйдите из gedit и терминал и перезагрузитесь. Теперь команда ls должна выполнить ls -1 по умолчанию.

    
ответ дан James 13.02.2012 в 04:01
1

ответ zetah является лучшим. Чтобы уточнить:

Псевдонимы лучше всего использовать для кратких, простых, часто используемых модификаций параметров команды по умолчанию. Они сохраняются в памяти (после чтения из исходного файла), для лучшей производительности или повторного использования.

Функции подходят для более сложной деятельности, которая часто используется и также сохраняется в памяти.

Скрипты подходят для наиболее сложных и наименее часто используемых команд.

См. этот вопрос и ответы по unix stackexchange - объясняет разницу в наилучшем использовании между псевдонимами, функциями и скриптами.

    
ответ дан RobDavenport 13.02.2012 в 03:44
0

Просто чтобы прояснить что-то в ответ @RobDavenport. Вы не можете использовать функцию для переопределения команды с тем же именем.

например. для добавления параметра по умолчанию в команду rsync , которую вы можете сделать:

alias ls='ls -1 [email protected]

Это добавит новый псевдоним, называемый ls , поэтому он будет вызываться вместо исходной команды. Он добавит параметр -1 и переадресует каждый параметр [email protected] на исходную команду ls .

Вы также можете сделать

function ls_column () {
  rsync -1 [email protected]
}

Он будет иметь тот же эффект, но вы должны использовать другое имя для своей функции. В противном случае он будет называть себя снова и снова.

    
ответ дан Tim 12.12.2017 в 08:39