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

35
Как подавить вывод dd?

У меня есть сценарий Bash, который создает некоторые файлы с помощью dd. Проблема в том, что dd генерирует большое количество выходных данных, которые будут мешать выводу моего скрипта. Обыскивая, я нашел решение: dd if=boot1h of="/dev/r$temp1" >& /dev/null Есть ли альтернатива, или...

35
Как я могу закрыть терминал, не убивая его потомков (без запуска `screen` в первую очередь)?

иногда я запускаю приложение в gnome-терминале, но потом мне внезапно приходится перезапускать gnome или что-то в этом роде. Я думаю, что ответ на вопрос также полезен, тогда я хочу отключиться от SSH, где что-то происходит. Терминальное дерево гнома выглядит так: gnome-terminal bash...

35
Как напечатать самую длинную строку в файле?

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

35
Понимание обратной черты (`)

Я пробую команду $ b=5; echo `$b`; -bash: 5: command not found но он не печатает 5, как это должно быть. Что мне здесь не хватает? Что `(backquote / backtick) означает в командах? кажется, говорит, что `оценивает команды внутри и заменяет их...

35
Точка с запятой в условных структурах

Зачем ставить точку с запятой в одном, а не в другом? Результат тот же Код один if [ "a" == "a" ] then echo "true" fi Код два if [ "a" == "a" ]; then echo "true"; fi Точки с запятой во втором коде не нужны? Когда необходимо ставить точку с...

35
Почему мой ~ / .bash_profile не работает?

Я использую Linux Mint. Мой логин ( cat /etc/passwd | grep myUserName) - это bash. После того, как я запустил свое графическое окружение рабочего стола и запустил из него эмулятор терминала, я увидел, что .bash_profileон не получен (измененные exportв нем переменные среды не установлены). Но если я...

35
Как мы можем запустить команду, хранящуюся в переменной?

$ ls -l /tmp/test/my\ dir/ total 0 Мне было интересно, почему следующие способы запуска вышеуказанной команды не удаются или преуспеют? $ abc='ls -l "/tmp/test/my dir"' $ $abc ls: cannot access '"/tmp/test/my': No such file or directory ls: cannot access 'dir"': No such file or directory $ "$abc"...

34
Какие команды Unix можно использовать как семафор / блокировку?

Я хочу запустить несколько сценариев оболочки Bash параллельно. Однако я хочу избежать гоночных условий. Какие команды Unix действительно атомарные, которые я мог бы использовать для этой цели, и как я могу их...

34
Откройте файл, заданный результатом команды в vim

Я делаю следующее почти каждый день Запустить поиск ( find -name somefile.txt) Откройте результат в vim Проблема в том, что я должен скопировать и вставить результат findв vimкоманду. Есть ли способ избежать этого? Я немного поэкспериментировал ( find -name somefile.txt | vim), но не нашел ничего,...

34
Что означает: $ {param: = value}?

Я прочитал следующее в Руководстве пользователя к Z-Shell : Синонимом «true» является «:»; это часто используется в этой форме, чтобы дать аргументы, которые имеют побочные эффекты, но которые не должны использоваться - что-то вроде : ${param:=value} которая является общей идиомой во всех...

34
Трубопровод от grep до awk не работает

Я пытаюсь grepв текущем tailфайле журнала и получить nслово из строки. Пример файла: $ cat > test.txt <<EOL Beam goes blah John goes hey Beam goes what? John goes forget it Beam goes okay Beam goes bye EOL ^C Теперь, если я сделаю tail: $ tail -f test.txt Beam goes blah John goes hey Beam...

34
Как мне создать каталог во всех подкаталогах?

Предположим, у меня есть такая структура каталогов: $ [~ / practice] ls а / б / ц / д / Теперь я хочу создать каталог tmp1во всех подкаталогах practiceи я делаю это: $ [~ / practice] mkdir * / tmp1 mkdir: невозможно создать каталог `* / tmp1 ': такого файла или каталога нет Затем я пытаюсь...

34
Что означает знак доллара, за которым следует квадратная скобка $ […] в bash?

Похоже, что $[expr]выполняет арифметическое расширение так же, как $((expr)). Но я не могу найти упоминания $[в руководстве по bash. Эта команда не дает результатов: gunzip -c /usr/share/man/man1/bash.1.gz | grep -E '\$\[' Что это за оператор и его поведение где-нибудь стандартизировано? Моя версия...

34
Как же !! работать в Bash?

Очень полезно, когда вы забыли sudo в начале своей команды, !!действует как псевдоним предыдущей команды. Пример : $ mv /very/long/path/for/a/protected/sensible/file/caution.h . (...) Permission denined $ sudo !! sudo mv /very/long/path/for(...) . [sudo] password : Как мы называем этот двойной...

33
Получение расширения в имени файла

Как мне получить расширение файла от bash? Вот что я попробовал: filename=`basename $filepath` fileext=${filename##*.} Делая это, я могу получить расширение bz2от пути /dir/subdir/file.bz2, но у меня есть проблема с путем /dir/subdir/file-1.0.tar.bz2. Я бы предпочел решение, использующее только...

33
Как я могу использовать переменную $ в расширении оболочки скобки последовательности?

Я хочу использовать $var inрасширение скобки оболочки с диапазоном, в bash. Просто положить {$var1..$var2}не работает, поэтому я пошел "боковой" ... Следующее работает, но немного туповато. # remove the split files echo rm foo.{$ext0..$extN} rm-segments > rm-segments source rm-segments Есть ли...

33
Как получить вывод из `screen` в скрипт?

У меня screenзапущен экземпляр, и мне нужно выполнить некоторый код внутри screenи вывести результат в мой скрипт. Первая часть довольно проста, я просто screen -S session_name -X eval 'stuff "$cmd"\015'. (Я изменил строку, которую нашел в скрипте ) Вторая часть, получая вывод, более сложна. Как я...