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

88
Как заставить bash-скрипты распечатывать каждую команду перед ее выполнением?

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

88
mysqldump на tar.gz

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

87
Запустите интерактивную оболочку bash с начальными командами, не возвращаясь в («супер») оболочку немедленно

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

82
Вы можете иметь более одного файла ~ / .ssh / config?

У нас есть бастионный сервер, который мы используем для подключения к нескольким хостам, и наш .ssh / config вырос до более чем тысячи строк (у нас есть сотни хостов, к которым мы подключаемся). Это становится немного громоздким, и я хотел бы знать, есть ли способ разбить файл .ssh / config на...

80
Как я могу выполнить произвольно сложную команду, используя sudo поверх ssh?

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

71
Журнал всех команд, запущенных администраторами на производственных серверах

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

71
Есть ли разница между тем, как в bash работают два амперсанда и точка с запятой?

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

71
Как получить pid только что начавшегося процесса

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

67
Уникальные особенности bash по сравнению с zsh

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

66
Как я могу отредактировать приветственное сообщение при запуске ssh?

У меня есть VPS для хостинга моего сайта. Он работает на сервере Ubuntu. Каждый раз, когда я захожу на свой сервер с помощью ssh, в моем терминале отображается длинное приветственное сообщение. Linux node61.buyvm.net 2.6.18-pony6-3 # 1 SMP Вторник, 13 марта 07:31:44 PDT 2012 x86_64 Программы,...

60
SSH от A до B на C, используя закрытый ключ на B

Я ищу простой способ SSH с моего локального компьютера A через прокси-сервер B на хост назначения C. Закрытый ключ, который идет с открытым ключом на C, находится на B, и я не могу положи этот ключ на мою локальную машину. Какие-нибудь советы? Кроме того, я хотел бы иметь возможность сделать это с...

55
Linux: Как использовать файл в качестве ввода и вывода одновременно?

Я просто запустил следующее в bash: uniq .bash_history > .bash_history и мой файл истории оказался совершенно пустым. Я думаю, мне нужен способ прочитать весь файл перед записью в него. Как это сделать? PS: Я, очевидно, думал об использовании временного файла, но я ищу более элегантное...

54
Какие полезные настройки .screenrc?

В основном, как некоторые из моих собственных, которые я разместил ниже. Я ищу дополнительные функции для программы «экран». По крайней мере, посмотрите на последнюю строку для фантастической «строки меню» в нижней части экранной сессии. ## gyaresu's .screenrc 2008-03-25 #...

54
В Bash гарантированы ли расширения подстановочного знака в порядке?

Гарантируется ли расширение подстановочного знака в Bash в алфавитном порядке? Я вынужден разбить большой файл на 10 Мбайт, чтобы они могли быть приняты моим репозиторием Mercurial. Я подумал, что смогу использовать: split -b 10485760 Big.file BigFilePiece. а затем вместо: cat BigFile |...

52
GNU less: как выполнить поиск, игнорируя чувствительность к регистру, не используя параметр less -I?

Из GNU меньше manpage -i или --ignore-case Вызывает поиски, чтобы игнорировать регистр; то есть прописные и строчные буквы считаются идентичными. Эта опция игнорируется, если в шаблоне поиска появляются заглавные буквы; Другими словами, если шаблон содержит заглавные буквы, тогда этот поиск не...

51
zcat / gzcat работает в linux, а не в osx. общая совместимость с Linux / OSX

Сначала конкретная проблема: в linux я использую zcat для отображения файла .zip. В osx zcat, кажется, автоматически добавляет .Z к имени файла. Различные люди предлагают заменить zcat на gzcat; однако, gzcat жалуется, что файл не в формате gzip! 'file' показывает это: ... Zip архив данных, по...

51
Как запустить локальный скрипт bash на удаленных машинах через ssh?

Я ищу способ перенести конфигурацию с одного центрального компьютера на несколько удаленных машин без необходимости устанавливать что-либо на удаленных машинах. Цель состоит в том, чтобы сделать что-то похожее на инструменты, подобные тем cfengine, но на множестве машин, на которых не настроены...