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

Оболочка является интерфейсом командной строки Unix. Вы можете вводить команды в оболочке в интерактивном режиме или писать сценарии для автоматизации задач. Используйте этот тег для вопросов, относящихся к / bin / sh и большинству совместимых оболочек (ash, bash, ksh, zsh,…). Для сценариев оболочки с ошибками, пожалуйста, проверьте их в http://shellcheck.net перед публикацией здесь.

2
Одинарная кавычка в двойных кавычках и справочное руководство Bash
В разделе 3.1.2.3 под названием Двойные кавычки руководство Bash гласит: Заключение символов в двойные кавычки ('"') сохраняет буквальное значение всех символов в кавычках, за исключением '$', '`', '\' и, когда расширение истории включено, '!'. На данный момент меня интересует одиночная кавычка ( '). Это особое значение, описанное в предыдущем разделе, …
18 bash  shell  quoting 

1
Как «человек» восстанавливает экран при выходе из программы?
Если я открываю справочную страницу программы наподобие catили ls, она печатает (может не подходящее слово) содержимое справочной страницы, а когда я нажимаю q, она показывает экран, как и перед вызовом manкоманды. Как происходит восстановление? Что стирает все, а затем печатает предыдущее содержимое оболочки? Пример: [VAR121@Tesla Testing]$ man ls Выход: LS(1) …
18 bash  shell  terminal  man 

3
Как отложить расширение переменной
Я хотел инициализировать некоторые строки в верхней части моего скрипта с переменными, которые еще не были установлены, например: str1='I went to ${PLACE} and saw ${EVENT}' str2='If you do ${ACTION} you will ${RESULT}' а потом на PLACE, EVENT, ACTIONи RESULTбудет установлен. Затем я хочу распечатать мои строки с расширенными переменными. Это …
18 bash  shell  string 

5
Как выполнить действие для всех файлов с определенным расширением в подпапках элегантным способом?
Моя текущая лучшая ставка: for i in $(find . -name *.jpg); do echo $i; done Проблема: не обрабатывает пробелы в именах файлов. Примечание: я также хотел бы графического способа сделать это, например, команду "дерево".
18 bash  shell  find 


4
Почему grep не использует трубу здесь?
У меня есть следующая команда: find / -name libGL.so.1 Который возвращает много строк с «Отказано в доступе». Я хочу исключить такие строки, поэтому я добавил следующее: find / -name libGL.so.1 | grep -v 'denied' Но вывод тот же - мой grep -v 'denied'не фильтрует строки с Permission denied. Я перепробовал …
18 shell  grep  pipe 

3
В чем разница между env, setenv, export и когда использовать?
Недавно я заметил, что у нас есть 3 варианта установки переменных среды: export envVar1=1 setenv envVar2=2 env envVAr3=3 Если есть другие способы, пожалуйста, просветите нас. Когда я должен предпочесть одно другому? Пожалуйста, предложите рекомендации. Что касается совместимости с оболочкой, которая является самой обширной (охватывает больше диалектов оболочки)? Я уже заметил …

4
Как разбить длинную строку на несколько строк в приглашении чтения -p в исходном коде?
Я пишу сценарий установки, который будет запускаться как /bin/sh. Есть строка, подсказывающая файл: read -p "goat can try change directory if cd fails to do so. Would you like to add this feature? [Y|n] " REPLY Я хотел бы разбить эту длинную строку на несколько строк, чтобы ни один из …

5
Избегайте запуска скрипта, если переменная не определена
У меня скрипт выглядит так: c=0 for f in */*; do cp -v "$f" "/myhome/CE$(printf '%0*d' 2 $BATCHNUM)-new-stuctures_extracted/test-$(printf '%0*d' 5 $c)" c=$((c=c+1)) done Тем не менее, пользователь должен предоставить переменную call BATCHNUM, в противном случае мне нужно заставить этот скрипт перестать работать. Было бы лучше, если бы я мог принудительно …

5
бросать diff для хранения очень похожих файлов?
На работе мы делаем ночной дамп наших баз данных mysql. Изо дня в день, я бы предположил, что почти 90-95% данных являются дубликатами, увеличиваясь с течением времени. (Черт возьми, на данный момент некоторые, вероятно, 99%) В этих дампах одна строка представляет собой один оператор mysql INSERT, поэтому единственными различиями являются …


3
Почему поведение синтаксиса `#!` Не определено POSIX?
На странице языка команд оболочки спецификации POSIX: Если первая строка файла команд оболочки начинается с символов «#!», Результаты не указываются. Почему поведение #!не определено POSIX? Я нахожу странным, что что-то такое портативное и широко используемое будет иметь неопределенное поведение.
17 shell  posix  shebang 

2
Оболочка POSIX: `$` теряет свое особое значение, если это последний символ в слове?
На пепел, тире и баш, когда я бегу $ echo ab$ это возвращается ab$ Это поведение определяется POSIX или это просто общее соглашение в POSIX-совместимых оболочках? Я не смог найти ничего на странице POSIX Shell Command Language, где упоминается такое поведение.
17 shell  posix 

5
Являются ли переменные типа $ 0 и $ 1 переменными оболочки / среды?
Есть переменные в оболочке , как $0, $1, $2, $?и т.д. Я попытался напечатать переменные оболочки и среды с помощью следующей команды: set Но этих переменных в списке не было. Таким образом, в основном эти переменные не считаются переменными оболочки / среды, верно? (несмотря на то, что для их вывода …
17 shell 

2
Подавить трассировку выполнения bash (set -x) снаружи скрипта
Я пытался найти ответ на этот вопрос, но пока не получилось: У меня есть сценарий, который запускает некоторые другие сценарии, и многие из этих других сценариев содержат «set -x», что заставляет их печатать каждую команду, которую они выполняют. Я хотел бы избавиться от этого, но сохранить информацию, если какой-либо из …
17 bash  shell  set 

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