Tag: оболочки

Настройте SSH, чтобы спросить мою личную ключевую фразу в оболочке (не в окне)

Когда я впервые использую SSH после загрузки, он запрашивает у меня секретную кодовую фразу (это поведение, которое я ожидаю). Но он делает это в окне, а не в оболочке (подобно gksudo VS sudo ). Это разочаровывает (я должен использовать мою мышь, чтобы щелкнуть это окно), а во-вторых иногда вызывает ошибку (я использую терминал Guake, иногда […]

Эффективный способ создания нескольких файлов

Я тестировал каталог поиска, который принимает max inodes и во время тестирования, которое я выполнял touch test_{1..1391803}.txt Но это дает мне ошибку "-bash: /usr/bin/touch: Argument list too long" , теперь я бегу ниже команды, но похоже, что это займет время Хью ruby -e '1.upto(1391803) { |n| %x( touch "test_#{n}.txt" ) }' Поэтому возникает вопрос: есть […]

Всякий раз, когда я набираю неправильную команду, мой терминал пытается запустить эту команду в фоновом режиме

Что-то странное начало происходить с моим терминалом. Всякий раз, когда я набираю неправильную команду, он пытается запустить эту команду в фоновом режиме. hegeek@colinux: ~# l [9]+ Stopped l thegeek@colinux: ~# fdsl [10]+ Stopped fdsl В чем может быть проблема? РЕДАКТИРОВАТЬ: После перезапуска системы проблема решена. Но мне все еще интересно, что вызвало эту проблему. Я […]

Как напечатать имя переменной вместе со значением?

Есть ли способ напечатать имя переменной вместе со значением? j=jjj k=kkk l=lll for i in jkl do …. done Ожидаемый результат (каждая переменная на отдельной строке): j = jjj k = kkk l = lll Может ли кто-нибудь предложить способ получить вышеуказанный результат?

Правильный способ распространения сценариев оболочки

Каков наиболее правильный способ распространения shell-скриптов, если поведение оболочек может быть изменено set и, следовательно, непредсказуемо? Например, rm *.txt не будет выполняться, как ожидалось, в средах, в которых был запущен set -f . Как я должен убедиться, что rm *.txt удаляет все текстовые файлы в текущем каталоге в любых средах? Как я должен убедиться, что […]

«Для файла в цифрах» вместо «в алфавитном порядке»?

У меня есть сценарий, создающий индекс, основанный на каждом файле в папке. Все имена файлов – это номер с расширением. Как я могу изменить свой цикл для обработки их в числовом порядке? for file in xml/*.xml; do … done

Как показать, что означает псевдоним

Я могу использовать compgen -a для перечисления всех псевдонимов: $ compgen -a egrep fgrep grep l la ll ls расширенное $ compgen -a egrep fgrep grep l la ll ls l , la и ll определены в моем ~/.bashrc : # some more ls aliases alias ll='ls -alF' alias la='ls -A' alias l='ls -CF' Какую […]

Названия функций Upstart и bash, содержащие "-"

Я унаследовал некоторые сценарии bash, где автор использовал «-» в именах функций вместо более обычного «_», например: function ab { … } Уродливый, но легальный в bash. Проблема в том, что я получил это внутри сценария выскочки и получил x.sh: строка 5: `a-b ': недействительный идентификатор Потребовалось некоторое время, чтобы понять, что это имя, а […]

Смутно о операторах [[vs [vs (vs ((

Я немного смущен тем, что делают эти операторы по-разному, когда они используются в bash (скобки, двойные скобки, скобки и двойные скобки). [[ , [ , ( , (( Я видел, как люди использовали их в следующих случаях: if [[condition]] if [condition] if ((condition)) if (condition)

Рекурсивный глобус?

Я бы хотел написать что-то вроде этого: $ ls **.py чтобы получить все .py имена файлов, рекурсивно идущие по иерархии каталогов. Даже если есть файлы .py для поиска, оболочка (bash) дает этот результат: ls: cannot access **.py: No such file or directory Любой способ сделать то, что я хочу? EDIT: Я хотел бы указать, что […]

Linux и Unix - лучшая ОС в мире.