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

29
Предотвратить выход grep в случае несоответствия

Этот скрипт не повторяет "после": #!/bin/bash -e echo "before" echo "anything" | grep e # it would if I searched for 'y' instead echo "after" exit Также было бы, если бы я удалил -eопцию в строке shebang, но я хотел бы оставить ее, чтобы мой скрипт останавливался, если произошла ошибка. Я не...

29
Bash запоминает неверный путь к исполняемому файлу, который был перемещен / удален

Когда я делаю which pip3 я получил /usr/local/bin/pip3 но когда я пытаюсь выполнить, pip3я получаю ошибку следующим образом: bash: /usr/bin/pip3: No such file or directory Это потому, что я недавно удалил этот файл. Теперь whichкоманда указывает на другую версию, pip3которая находится в,...

28
В Bash, если [-z “$ 1”] и [[$ 1 ”=“ ”] одно и то же?

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

28
Как автоматически записать все ваши терминальные сессии с помощью утилиты скрипта

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

28
Глоб с числовым порядком

У меня есть этот список файлов 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...

28
Почему echo> файл использует больше реального времени, чем echo | sed> file?

Пример ниже удивил меня. Кажется, это противоречит интуиции ... кроме того факта, что у комбо больше времени для пользователяecho | sed . Почему echoиспользуется так много системного времени, когда он работает один, или должен быть вопрос: как sedменяется состояние игры? Похоже, что в обоих случаях...

28
Как сделать непрерывный 'wc -l' с текстовыми инструментами GNU?

Я знаю конечно что cat logfile.txt | wc -l 120 скажет мне количество строк в файле. В то время как tail -f logfile.txt покажет мне новые строки, в которые пишет другая программа logfile.txt. Можно ли объединить оба, так что я получаю непрерывное обновление строки счетчика logfile.txt со...

28
Как выполнить шеллскрипт при подключении USB-устройства

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

28
В чем разница между одинарным и двойным знаком равенства (=) в сравнениях оболочки?

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

28
для против найти в Баш

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

28
Удаление каталога из PATH

Я пытаюсь скомпилировать wxWidgets, используя MingW, и на моем пути есть cygwin, который, кажется, конфликтует. Поэтому я хотел бы удалить /d/Programme/cygwin/binиз переменной PATH, и мне интересно, есть ли какой-нибудь элегантный способ сделать это. Наивным подходом было бы отразить его в файл,...

28
Bash скрипт для конвертирования всех * flac в * .mp3 с помощью FFmpeg?

Я хочу конвертировать все * .flac в * .mp3 в определенной папке. Это то, что я пробовал, но не работает: # change to the home directory cd ~/music # convert all *.flac files ffmpeg -i *.flac -acodec libmp3lame *.mp3 # (optional: check whether there are any errors printed on the terminal) sleep 60...

28
Как заставить пользователя сменить пароль при первом входе в систему с помощью ssh?

Я пытаюсь заставить вновь созданного пользователя изменить пароль при первом входе в систему с помощью ssh. Из соображений безопасности я хочу дать ему безопасный пароль, пока он не войдет в первый раз. До сих пор я сделал следующее: useradd -s /bin/bash -m -d /home/foo foo passwd foo Это chage -d...

28
Как «grep» для длины линии в заданном диапазоне?

ПРИМЕЧАНИЕ: этот вопрос является дополнением к этим вопросам и ответам: как "grep" для длины строки * не * в данном диапазоне? Мне нужно получить только строки из текстового файла (словаря, разделенного новой строкой), который имеет диапазон длин не менее 3 символов, но не более 10. Пример: ВХОД:...

28
Что делает exec {fd} </ dev / watchdog 'в Bash

Это буквально, а {fd}не заполнитель. У меня есть скрипт, который делает это, и ни в коем случае не использует источник, и нигде не ссылается {fd} Это действительный Bash? exec...

28
Где продолжение строки bash после && и || документально?

Я часто видел эту конструкцию в сценариях и использовал ее сам, но меня беспокоит, что я не могу найти ее в документации. Пример: [ -f file1 ] && [ -f file2 ] && echo "Both files exist." || echo "One or the other file doesn't exist." Это также можно сделать с помощью обратной косой...

28
$ _ vs! $. Последний аргумент предыдущей команды и перенаправление вывода

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

28
причина exec в скриптах-обёртках

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

28
Область действия локальных переменных в функциях оболочки

После прочтения 24.2. Локальные переменные , я думал, что объявление переменной varс ключевым словом localозначало, что varзначение было доступно только внутри блока кода, ограниченного фигурными скобками функции. Однако после запуска следующего примера, я обнаружил, что varтакже может быть...