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

Bash - это Bourne Again SHell, преемник классического Unix sh (shell).

5
Чистый способ записи сложной многострочной строки в переменную
Мне нужно написать несколько сложных XML в переменную внутри скрипта bash. Xml должен быть читаемым внутри скрипта bash, так как именно здесь будет находиться фрагмент xml, он не читается из другого файла или источника. Итак, мой вопрос заключается в следующем: если у меня есть длинная строка, которую я хочу, чтобы …
109 bash 


16
Как лучше всего проверить, смонтирован ли том в скрипте Bash?
Как лучше всего проверить, смонтирован ли том в скрипте Bash? Что мне действительно нравится, так это метод, который я могу использовать так: if <something is mounted at /mnt/foo> then <Do some stuff> else <Do some different stuff> fi
103 linux  bash  mount 

13
Как добавить метку времени в журнал скриптов bash?
У меня есть постоянно работающий скрипт, который я выводил в файл журнала: script.sh >> /var/log/logfile Я хотел бы добавить отметку времени перед каждой строкой, добавляемой в журнал. Подобно: Sat Sep 10 21:33:06 UTC 2011 The server has booted up. Hmmph. Могу ли я использовать джиу-джитсу?
95 linux  bash  logging  shell 

9
mysqldump на tar.gz
Обычно после сброса базы данных MySQL с помощью mysqldumpкоманды я немедленно выполняю tar / gzip результирующего файла. Я ищу способ сделать это в одной команде: Итак, из этого: mysqldump dbname -u root -p > dbname.sql tar czvf dbname.sql.tgz dbname.sql rm dbname.sql Чтобы что-то вроде этого: mysqldump dbname -u root -p …
88 mysql  debian  bash  gzip  tar 

7
запустить скрипт как пользователь, у которого есть nologin shell
Все, что мне нужно сделать, - это запустить определенный скрипт от имени конкретного пользователя, для которого nologin/falseоболочка указана в /etc/passwd. Я бы запустил скрипт от имени пользователя root, и он должен работать от имени другого пользователя. Бег: ~# su -c "/bin/touch /tmp/test" testuser будет работать, но мне нужна корректная оболочка …
88 linux  bash  shell  su  login 

8
Как заставить bash-скрипты распечатывать каждую команду перед ее выполнением?
Например, у меня есть простой файл Bash #!/bin/bash cd ~/hello ls Как сделать так, чтобы он отображал каждую команду перед ее выполнением? Как раз противоположный эффект «@echo off» в пакетном сценарии Windows.

7
Запустите интерактивную оболочку bash с начальными командами, не возвращаясь в («супер») оболочку немедленно
Я хочу запустить оболочку bash, (1) выполнить несколько команд, (2) и затем остаться в этой оболочке, чтобы выполнить, как мне нравится. Я могу сделать каждый из них в отдельности: Запустите команду, используя -cфлаг: $> bash -c "ls; pwd; <other commands...>" однако он сразу возвращается в «супер» оболочку после выполнения команд. …
87 bash 

7
Вы можете иметь более одного файла ~ / .ssh / config?
У нас есть бастионный сервер, который мы используем для подключения к нескольким хостам, и наш .ssh / config вырос до более чем тысячи строк (у нас есть сотни хостов, к которым мы подключаемся). Это становится немного громоздким, и я хотел бы знать, есть ли способ разбить файл .ssh / config …
82 linux  ssh  unix  bash 


12
Как я могу выполнить произвольно сложную команду, используя sudo поверх ssh?
У меня есть система, в которую я могу войти только под своим именем пользователя (myuser), но мне нужно запускать команды от имени другого пользователя (scriptuser). До сих пор я придумал следующее для запуска необходимых мне команд: ssh -tq myuser@hostname "sudo -u scriptuser bash -c \"ls -al\"" Однако, если я пытаюсь …
80 ssh  bash  scripting  sudo 

4
Есть ли разница между тем, как в bash работают два амперсанда и точка с запятой?
Если бы я хотел запустить две отдельные команды в одной строке, я мог бы сделать это: cd /home; ls -al или это: cd /home && ls -al И я получаю те же результаты. Однако что происходит в фоновом режиме с этими двумя методами? В чем функциональная разница между ними?
71 bash 

7
Журнал всех команд, запущенных администраторами на производственных серверах
В соответствии с политикой компании администраторы могут войти на сервер через личное имя пользователя, а затем запустить, sudo -iчтобы стать пользователем root. После запуска sudo -isudo создаст переменную окружения с именем SUDO_USER, которая содержит исходное имя пользователя. Есть ли способ войти ВСЕ команды в системный журнал с чем-то похожим на …
71 centos  bash  logging  sudo 

8
Как получить pid только что начавшегося процесса
Я хочу запустить процесс (например, myCommand) и получить его PID (чтобы позволить убить его позже). Я пробовал PS и фильтр по имени, но я не могу отличить процесс по именам myCommand ps ux | awk '/<myCommand>/ {print $2}' Потому что имена процессов не уникальны. Я могу запустить процесс: myCommand & …
71 linux  unix  bash  process  pid 

10
Уникальные особенности bash по сравнению с zsh
Я был пользователем zsh уже довольно давно (до этого tcsh и до этого csh). Я вполне доволен этим, но мне было интересно, есть ли какие-нибудь неотразимые особенности bash, которых нет в zsh. И наоборот, есть ли функции zsh, которых нет в bash. Мое нынешнее ощущение, что Bash лучше: Если вы …
67 bash  shell  zsh 

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