Запитання з тегом «bash»

Питання, характерні для Bourne Again SHell від GNU, на відміну від інших оболонок Bourne / POSIX. Для питань щодо оболонок Unix взагалі використовуйте тег / shell.

2
Чому експорт змінної в оболонці ssh друкує список експортованих змінних?
Врахуйте це: $ ssh localhost bash -c 'export foo=bar' terdon@localhost's password: declare -x DBUS_SESSION_BUS_ADDRESS="unix:path=/run/user/1000/bus" declare -x HOME="/home/terdon" declare -x LOGNAME="terdon" declare -x MAIL="/var/spool/mail/terdon" declare -x OLDPWD declare -x PATH="/usr/bin:/bin:/usr/sbin:/sbin" declare -x PWD="/home/terdon" declare -x SHELL="/bin/bash" declare -x SHLVL="2" declare -x SSH_CLIENT="::1 55858 22" declare -x SSH_CONNECTION="::1 55858 ::1 22" declare …
17 bash  ssh 

1
Як припинити TCP-з'єднання, встановлене самим bash?
Я використовував exec 3<>/dev/tcp/192.168.0.101/6435для встановлення TCP-з'єднання з 192.168.0.101:6435. І я отримав так само, як надіслав кілька повідомлень із pipeкомандою. Тепер я хочу припинити TCP-з'єднання. Але, ss -anpetя можу бачити, що баш сам тримає цей зв'язок, не змушуючи дочірнього процесу. Я намагався надіслати сигнали 9 і 15 до процесу баш, але, …

2
Як уникнути місця після змінної bash у рядку?
У мене є змінна для кольору. Я використовую його для встановлення кольору рядків, оцінюючи його всередині рядка. Однак мені потрібно вказати пробіл після імені (щоб ім’я не містило частини тексту). Це часом виглядає погано. Як я можу уникнути використання (друку) цього простору? Приклад (Скажімо, що Red=1і NC=2): echo -e "$Red …

1
Чому ця команда ffmpeg працює в bash, а не zsh?
Сьогодні я повернувся додому з роботи (запустіть bash на коробці Ubuntu) і спробував запустити якийсь код на моєму локальному вікні арки з моїм улюбленим zsh, і команди провалилися? Команда внизу з особистою інформацією та ip явно змінилася ffmpeg -i rtsp://user:pass@my.webserver.org:5554/my-media/media.amp?videocodec=h264 -threads 3 -vcodec copy -f segment -segment_time 2 outfiles/cam_out%04d.mp4 Він …
17 bash  zsh  quoting  url 

3
Різниця між {1,2,3} та {1..3}
Чи є різниця між послідовностями {1,2,3}та {1..3}? Наприклад, якщо у мене є деякі файли file.1 file.2 file.3 і я хочу, щоб catвони разом це безпечно використовувати cat file.{1..3} > file? Що я знаю, це cat file.*>fileможе спричинити проблеми, тому що оболонка може іноді розширювати файли випадковим чином (я думаю, це …
17 bash 

6
Використовуйте системну команду замість вбудованого Bash, не вказуючи повний шлях
Я використовую Bash як свою інтерактивну оболонку, і мені було цікаво, чи існує простий спосіб змусити Bash запустити системну команду замість вбудованої команди оболонки у випадку, коли вони обидва мають одне й те саме ім'я. Наприклад, використовуйте систему kill(від util-linux) для друку ідентифікатора процесу (pid) названих процесів замість надсилання сигналу: …

3
Як запустити нескінченну петлю на задньому плані
Як я можу запустити нескінченний цикл у фоновому режимі, продовжуючи виконувати сценарій? Приклад "скрипту": while true; do something_in_the_background; done do_something_while_the_loop_goes_on_in_the_background for 1 2 3; do somethingelse; done exit 0 &Здається, це (зауважте ) через короткий час руйнує всю систему: while true; do something_in_the_background & done do_something_while_the_loop_goes_on_in_the_background for 1 2 3; …
17 bash 

4
Як стандартний вхід однієї програми може бути переданий як аргумент іншій?
Скажімо, існує програма, яка бере два аргументи; вхідний файл і вихідний файл. Що робити, якщо я не хочу зберігати цей вихідний файл на диску, а краще передати його безпосередньо stdinіншій програмі. Чи є спосіб досягти цього? Дуже багато команд, які я зустрічаю в Linux, дають можливість передавати "-" як аргумент …

1
Чи стандартна поведінка для CD автоматично обирати, коли йому надається неповне ім'я каталогу?
У мене є три папки, що називаються ProjectA, ProjectBі ProjectC. Коли я tab-повний cdдо cd Projectі натисніть Enter, він вибирає ProjectC. Я виявив, що це стосується і інших подібних випадків; він налаштовується до останнього в лексикографічному порядку (але це також може бути останнім часом змінено / додано). Це очікувана поведінка …

4
Проміжки поруч з трубами
Я бачив history | grep blahі history |grep blah; а history|grep blahтакож працює, хоча, здається, ніхто ніколи не використовує його. Чи є якесь значення в просторах (наприклад, для передачі в / з різних команд потрібне різне використання пробілів), або це завжди довільно?
17 bash  shell  pipe 

3
Запуск сценарію sh: «Дозвіл відхилено», незважаючи на біт та права root
Я встановив Debian у VirtualBox (для різних експериментів, які зазвичай ламали мою систему) і спробував запустити скрипт гостьового додатка VirtualBox. Я ввійшов як root і намагався запустити autorun.sh, але мені дісталося «Відмовлено у дозволі». ls -lпоказує, що сценарій має права на виконання. Вибачте, що я не можу скопіювати вихід - …

2
Як отримати втрачені псевдоніми?
Я зробив команду echo для свого файлу .bash_aliases та стерв усі мої псевдоніми, крім тестового псевдоніма. Однак у мене все ще відкритий сеанс, у якому завантажені псевдоніми (у tcl?). Чи можу я отримати їх із цього сеансу?

2
Як отримати ім’я користувача, який виконав сценарій bash як sudo?
Я хочу створити bash-скрипт, який повинен бути виконаний за допомогою sudo, але повинен враховувати ім’я користувача, який його не виконав. Тож якщо користувач bobпрацює, sudo ./myscript.shя хотів би myscript.shзнати, bobхто його виконав. Давайте заглянемо всередину myscript.sh: USER=$(whoami) # Do something that takes into account the username. Як я можу знати …

4
Запропонуйте користувачеві увійти як корінь під час запуску сценарію оболонки
Проблема, яку я отримую, - це коли я ввожу команду, su - root на початку мого файлу сценарію оболонки він пропонує користувачеві ввести пароль, а потім НЕ продовжуватиметься з рештою скрипту оболонки. Потім мені доведеться вручну знайти та запустити скрипт оболонки через термінал. Я хочу, щоб сценарій переконався, що користувач …

2
Що означають аргументи '-v' та '-x', щоб башти?
Я бачив пару сценаріїв оболонок із наступним шебангом: #!/bin/bash -x -v Однак man bashне пояснює, до чого ці аргументи -xі -vвиступають, якщо вони взагалі належать bash. То що означають ці -xта -v(та інші можливі аргументи)?
17 bash  shebang 

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.