Это полностью ваше дело, но большинство программ делает что-то как это
program --help
Usage: program [][ ...]
Options:
--help show this message, then exit
--something after some spaces for alignment, an explenation follows.
Необходимо проверить getopt, который большинство программ (это также доступно на языках программирования), и использование сценариев. Таким образом, люди, использующие Ваш сценарий, не запутаются.
Наконец, необходимо добавить все опции, даже если они кажутся тривиальными Вам, чтобы быть завершенными. Так, я добавил бы и - справка и - версия в разделе Options использования.
Вывод цвета для ls
обычно включается через псевдоним в большинстве дистрибутивов в наше время.
$ alias ls
alias ls='ls --color=auto'
Можно всегда отключать псевдоним временно путем добавления префикса его обратную косую черту.
$ \ls
Выполнение вышеупомянутого сорвет псевдоним только для этого вызова. Можно использовать его любое время, Вы хотите отключить любой псевдоним.
С GNU ls
, можно указать ls --color=never
явно отключить вывод цвета. (Даже если Вы имеете alias ls='ls --color=auto'
, когда Вы работаете ls --color=never
, это расширится до ls --color=auto --color=never
, и более поздняя опция имеет приоритет.)
ls
псевдонимы, и Вы теряете их для целой сессии вместо просто единственной команды.
– iconoclast
06.08.2015, 01:50
Можно также просто использовать (в качестве на DOS):
dir
Это покажет результаты без цвета, можно добавить аргументы то же к ls
, как -l
.
Чтобы отключить цвет: unalias ls
Чтобы включить цвет: alias ls = 'ls --color = auto'
Чтобы временно отключить цвет: \ ls -ltr
Во многих дистрибутивах Linux это по умолчанию включено в users .bashrc
.
Отредактируйте ~ / .bashrc
и удалите строку, которая выглядит так:
alias ls='ls --color=auto'
Если вы хотите отключить эту функцию для всех новых учетных записей, созданных на этом компьютере в будущем, удалите ту же строку из:
/etc/skel/.bashrc
В Centos7 это устанавливается в /etc/profile.d/colorls.sh
... последние 3 строки этого скрипта:
alias ll='ls -l --color=auto' 2>/dev/null
alias l.='ls -d.* --color=auto' 2>/dev/null
alias ls='ls --color=auto' 2>/dev/null
Если у вас есть желание и разрешения... закомментирование нежелательной строки должно помочь.
Возможно, происходит что-то еще. ls
не должен использовать цвета, если не считает, что это связано с чем-то интерактивным. Это не должно раскрашивать вещи, когда вы подключаетесь к другой программе.
Псевдоним, как правило, плохая идея, потому что вы никогда не сможете избавиться от этой опции, и вы привыкнете к личным настройкам, которые вы, возможно, не сможете перенести с собой на какую-то другую машину, на которой вам придется работать. Если вам нужно отключить его, чтобы передать его чему-то другому, используйте переключатель в этом канале. Но цветов не должно быть в трубе.
Для ls
проверьте, поддерживает ли ваш компьютер переменную окружения LS_COLORS
. trapd00r/LS _ЦВЕТА показывает, как это работает. dircolors позволяет настраивать цвета поминутно и для каждого типа файла. Если вы не установили LS_COLORS
, но включили раскрашивание, ls
сделает кучу системных вызовов, чтобы выяснить типы файлов и атрибуты, чтобы понять, что нужно раскрасить. Разработчики Sherlock обнаружили, что настройка LS_COLORS
позволяет избежать всего этого и дает 40-кратное увеличение скорости . Прочитайте их кровавые подробности, чтобы увидеть, что они нашли.
Я заставляю все типы файлов использовать цвета по умолчанию:
$ export LS_COLORS='bd=0:ca=0:cd=0:di=0:do=0:ex=0:pi=0:fi=0:ln=0:mh=0:no=0:or=0:ow=0:sg=0:su=0:so=0:st=0:tw=0:'
Вот файл LS _COLORS, который я передал в dircolors:
BLK 0
CAPABILITY 0
CHR 0
DIR 0
DOOR 0
EXEC 0
FIFO 0
FILE 0
LINK 0
MULTIHARDLINK 0
NORMAL 0
ORPHAN 0
OTHER_WRITABLE 0
SETGID 0
SETUID 0
SOCK 0
STICKY 0
STICKY_OTHER_WRITABLE 0
Для grep
,посмотрите, поддерживает ли ваш GREP_COLORS
или GREP_OPTIONS
.
добавив к ответу @brian -d -foy, в большинстве случаев есть простой раздражающий цвет, который вам нравится менять, например, невидимый синий каталога или " OTHER _WRITABLE" ярко-зеленый, так что давайте использовать наш 24 -битный дисплей:)
export LS_COLORS='di=04;01;38;5;33:ow=04;01;38;5;33;48;2;60;10;0'
чтобы переопределить только цвет каталога и его другой -перезаписываемый цвет
04: underline;
01: bold/brighter;
38;5;33: redifined-blue;
48;2;60;10;0: dark red background
подробнее о де Код ANSI
# chmod -x /path/to/dircolors
напр.
# chmod -x /usr/bin/dircolors
кажется эффективным способом отключить color ls на некоторых системах.
command ls
, конечно, но это немного быстрее. – iconoclast 01.01.2014, 21:45