Вопросы с тегом «bash»

49
Закрытие файлового дескриптора,> & - vs <& -

В учебнике bash, который я читаю, говорится, что если вы откроете дескриптор файла для чтения, т.е. exec 3< echolist Тогда вы должны закрыть это так, exec 3<&- Однако, если вы открываете дескриптор файла для записи, он должен быть закрыт следующим образом: exec 3>&- Тем не менее,...

48
Удалите дубликаты записей $ PATH с помощью команды awk

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

48
CLICOLOR и LS_COLORS в bash

У меня есть следующая настройка в .bashrc для раскраски листингов. экспорт CLICOLOR = 1 export LS_COLORS = 'no = 00: fi = 00: di = 00; 34: ln = 01; 36: pi = 40; 33: so = 01; 35: do = 01; 35: bd = 40; 33; 01: кд = 40; 33; 01: или = 40; 31; 01: ех = 01; 32: * дегтя = 01; 31:. * TGZ = 01; 31:. * ARJ =...

48
почему ls -d также перечисляет файлы и где это задокументировано?

при указании ls --directory a*следует указывать только каталоги, начинающиеся сa* НО это перечисляет файлы И каталоги, начинающиеся с a Вопросы : где я могу найти какую-то документацию по этому вопросу, кроме как manи infoгде, я думаю, я внимательно посмотрел? это работает только в BASH?...

48
Как проверить, использует ли файл CRLF или LF, не изменяя его?

Мне нужно периодически запускать команду, которая гарантирует, что некоторые текстовые файлы хранятся в режиме Linux. К сожалению, dos2unixвсегда изменяет файл, который может испортить временные метки файла и папки и вызвать ненужные записи. Сценарий, который я пишу, написан на Bash, поэтому я бы...

48
Как отобразить дескрипторы открытых файлов, но не используя команду lsof

Привет, я прочитал здесь, что lsof не является точным способом получения количества файловых дескрипторов, которые в настоящее время открыты. Он рекомендовал использовать эту команду вместо cat /proc/sys/fs/file-nr В то время как эта команда отображает количество FD, как вы отображаете список...

48
Как я могу полностью удалить элемент из массива?

unset array[0]удаляет элемент, но все же, если я это сделаю, echo ${array[0]}я получаю нулевое значение, более того, есть другие способы сделать это, но если элемент массива содержит пробелы, как показано ниже array[0]='james young' array[1]='mary' array[2]='randy orton' но они также не в состоянии...

47
Предполагаемое использование Ctrl + T в Bash?

Я заметил, что bash имеет сокращение ctrl+, Tкоторое меняет последние два символа перед курсором. Мне интересно, почему инженеры решили включить это. Это было унаследовано от предыдущего соглашения? Или есть практическая цель, для которой это обычно используется?...

47
давая вывод grep в rm

Я пытаюсь передать grepвывод rm, но он выводит бесполезные вещи. Требуется ли какой-либо переключатель для rm? Или может rmбыть предоставлено регулярное выражение непосредственно? ls | grep '^\[Daruchini'| rm rm: отсутствует операнд Попробуйте `rm --help 'для получения дополнительной...

47
Bash: двойное равен vs -eq

Я делаю целочисленное сравнение в bash (пытаясь увидеть, работает ли пользователь от имени пользователя root), и я нашел два разных способа сделать это: Двойной равно: if [ $UID == 0 ] then fi -eq if [ $UID -eq 0 ] then fi Я понимаю, что в bash нет> = или <=, только -ge и -le, так почему же...

47
Как восстановить значение параметров оболочки, таких как `set -x`?

Я хочу set -xв начале своего сценария и «отменить» его (вернуться в состояние до того, как я его установлю) после установки вслепую +x. Это возможно? PS: я уже проверил здесь ; это, кажется, не отвечало на мой вопрос, насколько я мог...

47
Сделать CD автоматически Ls

Я нахожу, что я часто делаю следующее: %> cd bla/bla %> ls Я хотел бы, чтобы всякий раз, когда я cdв каталог, он автоматически делал ls. Некоторое время я возился с моим .bashrc, но не мог понять, как это...

46
Как создать последовательность с ведущими нулями, используя расширение скобки

Когда я использую следующее, я получаю ожидаемый результат: $ echo {8..10} 8 9 10 Как я могу использовать это расширение скобки простым способом, чтобы получить следующий результат? $ echo {8..10} 08 09 10 Я теперь, что это может быть получено с помощью seq(не пытался), но это не то, что я ищу....

46
отключить закрытие окна CTRL-D в терминаторе (эмулятор терминала)

Я часто захожу через несколько сессий SSH. Чтобы выйти из моих сеансов, я нажимаю CTRL+ d, пока не вернусь на свою локальную машину. Однако иногда я нажимаю один раз слишком много, и мой терминал выходит. Есть ли способ заблокировать CTRL+ dот закрытия моего терминала? Я использую терминатор в...