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

Вопросы, специфичные для GNU Bourne Again SHell, в отличие от других оболочек Bourne / POSIX. Для вопросов о оболочках Unix в целом используйте вместо этого тег / shell.

3
Как явно и безопасно форсировать использование встроенной команды в bash
Есть похожий вопрос, который касается сценария «обтекания», где вы хотите заменить, например, cdкоманду, которая вызывает встроенную функцию cd. Тем не менее, в свете shellshock и др. И зная, что bash импортирует функции из среды, я провел несколько тестов и не могу найти способ безопасного вызова встроенной функции cdиз моего скрипта. …
19 bash  security 


1
Как была обнаружена уязвимость в Shellshock Bash?
Поскольку эта ошибка затрагивает очень много платформ, мы могли бы кое-что узнать из процесса, с помощью которого была обнаружена эта уязвимость: это был момент εὕρηκα (eureka) или результат проверки безопасности? Поскольку мы знаем, что Стефан обнаружил ошибку Shellshock, и другие могут знать об этом процессе, нам будет интересна история о …

5
Почему я иногда получаю многократные подсказки с «>» в ​​терминале?
Хорошо, когда я запускаю определенные команды неправильным образом (с ошибками и т. Д.), Терминал выводит это: >вместо computername:workingfolder username$, и когда я набираю команду enter, она выглядит следующим образом: > > > Это было бы, если бы я нажал ввод 3 раза.

3
Отключить завершение вкладки в Bash для некоторого каталога, который содержит большое количество файлов?
Я работаю с большим количеством файлов, которые я храню в каталоге. Каждый раз, когда я захожу в этот каталог и случайно нажимаю Tabдважды, отображение файлов, соответствующих шаблону, занимает слишком много времени (может быть более минуты), и меня это раздражает. Например, моя структура каталогов: my-project/ ├── docs/ ├── data/ <---- contains …

5
Есть ли способ указать sudo установить мое имя пользователя в качестве владельца для файлов, созданных вместо root?
Если я это сделаю sudo cp /etc/foo.txt ~/foo.txt, новый файл будет создан rootкак владелец. Прямо сейчас я не вижу другого способа, кроме как использовать последние две команды ( lsдля пояснения варианта использования): belmin@server1$ ls /etc/foo.txt > -rw------- 1 root root 3848 Mar 6 20:35 /etc/foo.txt > belmin@server1$ sudo cp /etc/foo.txt …
19 bash  files  sudo 

4
Как присвоить пространственные значения переменным в bash, используя eval
Я хочу динамически присваивать значения переменным, используя eval. Следующий фиктивный пример работает: var_name="fruit" var_value="orange" eval $(echo $var_name=$var_value) echo $fruit orange Однако когда значение переменной содержит пробелы, evalвозвращается ошибка, даже если $var_valueона заключена в двойные кавычки: var_name="fruit" var_value="blue orange" eval $(echo $var_name="$var_value") bash: orange : command not found Есть ли способ …
19 bash  shell  quoting 

3
проблема с readarray (или pipe)
Я застрял со странным поведением readarrayкоманды. В man bashгласит: readarray Read lines from the standard input into the indexed array variable array но эти скрипты не работают (массив пуст): unset arr; (echo a; echo b; echo c) | readarray arr; echo ${#arr[@]} unset arr; cat /etc/passwd | readarray arr; echo …
19 bash  pipe 

4
Что означает последовательность bash '\ 033 [999D' и где это объясняется?
Я сталкивался с последовательностями bash, такими как \033[999Dи \033[2K\rкоторые используются, чтобы сделать некоторые манипуляции с распечаткой на терминале. Но что означают эти последовательности? Где я могу найти список / резюме в Интернете, чтобы помочь мне понять значение этих последовательностей?
19 bash  terminal 

9
Проверьте, установлены ли несколько переменных
Я хотел бы убедиться, что в определенной точке скрипта, после sourceсоздания файла конфигурации, установлены несколько переменных и, если это не так, чтобы остановить выполнение, сообщая пользователю об отсутствующей переменной. я пытался for var in $one $two $three ; do ... но если, например $two, не установлено, цикл никогда не выполняется …

5
Труба присваивает переменную
Для простоты я хотел бы сделать: echo cart | assign spo; echo $spo Выход: корзина Такое assignприложение существует? Я знаю все способы сделать это с помощью замены.
19 bash  variable 

4
Поиск предыдущей команды с тем же префиксом, когда я нажимаю вверх в приглашении оболочки
Исходя из мира FreeBSD, я хочу, чтобы терминал Linux вел себя как FreeBSD, особенно в версии 9.1, в основном, когда вы вводите cdв терминал и нажимаете стрелку «вверх», вы можете просматривать все команды в истории, начиная с cdкоторых вы можете выиграть много времени. Я не знаю, как включить эту функцию …

3
rsync определенные файлы, исключая остальные, игнорируя каталог .svn /, рекурсивно
Я использую, rsyncчтобы скопировать некоторые файлы из общего ресурса в другой. Рекурсивно мне нужно: Удалить файлы в месте назначения, которые были удалены из источника Только синхронизация .phpи .jsфайлы Исключить все остальные типы файлов Не удаляйте .svn/каталоги в месте назначения Если я использую это: rsync -zavC --delete --include='*.php' --include='*.js' --exclude="*" \ …

4
bash -e выходит, когда значение let или expr равно 0
У меня есть скрипт bash, который устанавливает -e, поэтому скрипт будет завершаться при любом состоянии выхода! = 0. Я пытаюсь сделать некоторую базовую арифметику оболочки, назначенную для переменных, и иногда выражение равно 0, что приводит к состоянию выхода команды let или expr, равному «1». Вот пример: #!/bin/bash -ex echo "Test …

8
Избежание ожидания в bash без команды sleep
Я знаю, что могу подождать, пока условие станет истинным в bash, выполнив: while true; do test_condition && break sleep 1 done Но он создает 1 подпроцесс на каждую итерацию (сон). Я мог бы избежать их, сделав: while true; do test_condition && break done Но он использует много процессора (занят ожидания). …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.