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

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

1
Почему echo> файл использует больше реального времени, чем echo | sed> file?
Пример ниже удивил меня. Кажется, это противоречит интуиции ... кроме того факта, что у комбо больше времени для пользователяecho | sed . Почему echoиспользуется так много системного времени, когда он работает один, или должен быть вопрос: как sedменяется состояние игры? Похоже, что в обоих случаях echoнужно повторить одно и то …
28 bash  shell  pipe  time  echo 

1
В Bash, если [-z “$ 1”] и [[$ 1 ”=“ ”] одно и то же?
В скриптах оболочки Bash, в чем разница (если таковая имеется) между следующими двумя операторами? 1.) if [ -z "$1" ] 2.) if [ "$1" = "" ] Я обнаружил, что пишу второй в некоторых сценариях, но потом я прочитал здесь, что использование -zдостигает того же. Если есть проблемы с использованием …

1
$ _ vs! $. Последний аргумент предыдущей команды и перенаправление вывода
Вопрос о специальных переменных. Документация гласит: !!:$ обозначает последний аргумент предыдущей команды . Это может быть сокращено до! $. ( $_подчеркивание.) При запуске оболочки задайте абсолютный путь, используемый для вызова оболочки или сценария оболочки, выполняемого в том виде, как он был передан в среде или списке аргументов. Впоследствии, расширяется до …

3
Функции выполняются как подпроцессы в Bash?
В Advanced Bash-Scripting Guide , в примере 27-4 , 7-я строка снизу, я прочитал это: Функция выполняется как подпроцесс. Я сделал тест в Bash, и кажется, что приведенное выше утверждение неверно. Поиски на этом сайте, Bash Man, и моя поисковая система не проливают свет. У вас есть ответ и вы …
28 bash  process  function 


9
для против найти в Баш
При циклическом просмотре файлов существует два способа: используйте for-loop: for f in *; do echo "$f" done использовать find: find * -prune | while read f; do echo "$f" done Предполагая, что эти два цикла найдут один и тот же список файлов, каковы различия между этими двумя параметрами в производительности …

3
Как автоматически записать все ваши терминальные сессии с помощью утилиты скрипта
То, чего я хочу достичь, - это возможность автоматически записывать сеансы терминала в файл всякий раз, когда я использую Yakuake / Konsole. Это легко сделать, если в начале моей сессии я сделаю: script -f /home/$USER/bin/shell_logs/$(date +"%d-%b-%y_%H-%M-%S")_shell.log Но я хочу запускать вышеупомянутое автоматически всякий раз, когда я запускаю Yakuake или открываю …

4
Как «grep» для длины линии в заданном диапазоне?
ПРИМЕЧАНИЕ: этот вопрос является дополнением к этим вопросам и ответам: как "grep" для длины строки * не * в данном диапазоне? Мне нужно получить только строки из текстового файла (словаря, разделенного новой строкой), который имеет диапазон длин не менее 3 символов, но не более 10. Пример: ВХОД: egyezményét megkíván ki …
28 bash  sed  grep  perl 

2
В чем разница между одинарным и двойным знаком равенства (=) в сравнениях оболочки?
Прочитайте, что для сравнения строк внутри ifмы должны использовать двойные квадратные скобки. В некоторых книгах говорится, что сравнение может быть сделано =. Но это работает с ==тоже. #!/bin/bash a="hello" b="world" if [[ $a == $b ]];then echo "equal" fi Есть ли разница между =и ==в сравнении?

2
причина exec в скриптах-обёртках
Я видел примеры сценариев-оболочек, которые в двух словах следующие: #!/bin/bash myprog=sleep echo "This is the wrapper script, it will exec "$myprog"" exec "$myprog" "$@" Как видно выше, они execпочти сразу же заменяют вновь созданную оболочку на $myprog. Можно добиться того же без exec: #!/bin/bash myprog=sleep echo "This is the wrapper …
28 bash  exec 

4
Как выполнить шеллскрипт при подключении USB-устройства
Этот вопрос был перенесен из Stack Overflow, потому что на него можно ответить в Unix и Linux Stack Exchange. Мигрировал 6 лет назад . Я хочу выполнить скрипт, когда я подключаю устройство к моей машине с Linux. Например, запустите xinputмышь или резервную копию на определенном диске. Я видел много статей …
28 linux  bash  ubuntu  udev 

5
Глоб с числовым порядком
У меня есть этот список файлов PDF в каталоге: c0.pdf c12.pdf c15.pdf c18.pdf c20.pdf c4.pdf c7.pdf c10.pdf c13.pdf c16.pdf c19.pdf c2.pdf c5.pdf c8.pdf c11.pdf c14.pdf c17.pdf c1.pdf c3.pdf c6.pdf c9.pdf Я хочу объединить их, используя ghostscript в числовом порядке (похоже на это): gs -q -sPAPERSIZE=a4 -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile=out.pdf *.pdf …

3
Что означает «пока:;»?
Я знаю, что такое whileпетля. Тем не менее, я видел только это работает с: while [condition] while ![condition] while TRUE (infinite loop) Где утверждение whileдолжно быть либо TRUEили FALSE. Существует встроенная команда оболочки с именем :. Это описывается как фиктивная команда, которая ничего не делает, но я не знаю, является …

2
Правильное поведение ловушек EXIT и ERR при использовании `set -eu`
Я наблюдаю странное поведение при использовании set -e( errexit), set -u( nounset) вместе с ловушками ERR и EXIT. Они кажутся взаимосвязанными, поэтому разумно их объединить. 1) set -uне запускает ERR-ловушки Код: #!/bin/bash trap 'echo "ERR (rc: $?)"' ERR set -u echo ${UNSET_VAR} Ожидается: вызов ERR, RC! = 0 Фактически: ERR-ловушка …

2
sudo: невозможно выполнить ./script.sh: нет такого файла или каталога
Я в тупике. У меня есть скрипт в моем /homeкаталоге, который является исполняемым: [user@server ~]$ ll total 4 -rwx------ 1 user user 2608 Jul 15 18:23 qa.sh Однако, когда я пытаюсь запустить его с sudoэтим, он говорит, что не может найти его: [user@server ~]$ sudo ./qa.sh [sudo] password for user: …

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