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

Оболочка является интерфейсом командной строки Unix. Вы можете вводить команды в оболочке в интерактивном режиме или писать сценарии для автоматизации задач. Используйте этот тег для вопросов, относящихся к / bin / sh и большинству совместимых оболочек (ash, bash, ksh, zsh,…). Для сценариев оболочки с ошибками, пожалуйста, проверьте их в http://shellcheck.net перед публикацией здесь.

4
Как выполнить библиотечные команды из оболочки?
Я хотел просто вычислить длину строки (это значение хеша). Итак, я открыл терминал и сделал это: $ apropos length это вернуло меня с кучей команд / функций, имеющих (3)или (3ssl)добавленных в конце их. Теперь человек мужчина дает нам информацию о том, что это section numbersзначит. 3 Library calls (functions within …
27 shell  libraries 

2
Ошибка в тесте скобки оболочки, когда строка является левой скобкой
Раньше я был уверен в том, что цитирование строк - это всегда хорошая практика, чтобы избежать его разбора оболочкой. Потом я наткнулся на это: $ x='(' $ [ "$x" = '1' -a "$y" = '1' ] bash: [: `)' expected, found 1 Попытка изолировать проблему, получая ту же ошибку: $ …
27 shell  test 

2
Разница между 'ls' и 'echo $ (ls)'
Рассмотрим два образца оболочки $ ls myDoc.html SomeDirectory someDoc.txt а также $ echo $(ls) myDoc.html SomeDirectory someDoc.txt Выполняется первый, lsкоторый, как я понимаю, добавляет содержимое текущего рабочего каталога в stdoutфайл (это то, что отображает терминал). Это верно? Вторая получает значение lsкоманды (что означает содержимое текущего рабочего каталога) и печатает его …
27 shell 

2
Проверьте длину переменной
Я должен проверить длину чтения переменной (мой сценарий ограничен пятью вставленными символами), я думаю о чем-то вроде этого: #!/bin/bash read string check=${#string} echo $check if [ $check -ge 5 ]; then echo "error" ; exit else echo "done" fi Есть ли более "элегантное" решение?
27 bash  shell  string 

4
Почему нет команды оболочки для создания файлов?
Внимание, пожалуйста: Я не спрашиваю, как сделать файл из командной строки! Я использовал touchдля создания файлов в течение многих лет, не обращая внимания на то, что его основная цель заключается в другом. Если кто-то хочет создать файл из командной строки, существует так много возможностей: touch foo.bar > foo.bar cat > …

4
Разрешено ли оболочке оптимизировать бесполезные завершающие команды?
Если оболочку просят выполнить, вероятно, бесполезную ( или частично бесполезную ) команду, о которой известно, что она завершается, например cat hugeregularfile.txt > /dev/null, может ли она пропустить выполнение этой команды ( или выполнить, скажем, более дешевый эквивалент touch -a hugeregularfile.txt )? В более общем смысле, похожа ли оболочка на компиляторы …

6
Почему я не могу перенаправить вывод имени пути из одной команды в «cd»?
Я пытаюсь cdпринять имя каталога, перенаправленное на него от другой команды. Ни один из этих методов не работает: $ echo $HOME | cd $ echo $HOME | xargs cd Это работает: $ cd $(echo $HOME) Почему первый набор команд не работает, и есть другие, которые также терпят неудачу таким образом?

4
Тестирование, если переменная пуста в сценарии оболочки
Я видел следующую технику, которую много раз использовали на разных оболочках, чтобы проверить, является ли переменная пустой: if [ "x$1" = "x" ]; then # Variable is empty fi Есть ли какие-либо преимущества в использовании этого по сравнению с более каноническим if [ -z "$1" ]? Может ли это быть …

8
В чем заключается полезность команды: в сценариях оболочки, если она явно ничего не делает?
В ответе на этот вопрос о комментариях в сценариях оболочки указано, :что это пустая команда, которая явно ничего не делает (но не должна использоваться для комментариев). Какова была бы полезность команды, которая абсолютно ничего не делает?

4
Два файла жестко связаны?
Как я могу сказать, что два файла жестко связаны из командной строки? например, что-то связать это: $ ls fileA fileB fileC $ is-hardlinked fileA fileB yes $ is-hardlinked fileA fileC no
27 shell  files 

12
Linux - команда для вывода списка файлов (кроме ls)
Этот вопрос был перенесен из Stack Overflow, потому что на него можно ответить в Unix и Linux Stack Exchange. Мигрировал 8 лет назад . Представьте, что вы работали в системе, и кто-то случайно удалил lsкоманду ( /bin/ls). Как вы можете получить список файлов в текущем каталоге? Попытайся. Я перепробовал много …
27 shell  command-line  ls 

4
Как указать символы, используя шестнадцатеричные коды в `grep`?
Этот вопрос был перенесен из Stack Overflow, потому что на него можно ответить в Unix и Linux Stack Exchange. Мигрировал 8 лет назад . Я использую следующую команду для определения диапазона набора символов для шестнадцатеричного кода от 0900 (вместо अ) до 097F (вместо व). Как я могу использовать шестнадцатеричный код …

3
Как я могу время трубы?
Я хочу timeкоманду, которая состоит из двух отдельных команд с одним выводом трубопровода к другому. Например, рассмотрим два сценария ниже: $ cat foo.sh #!/bin/sh sleep 4 $ cat bar.sh #!/bin/sh sleep 2 Теперь, как я могу timeсообщить о потраченном времени foo.sh | bar.sh(и да, я знаю, что канал здесь не …
27 bash  shell  pipe  time 

2
Где устанавливается переменная окружения TERM по умолчанию?
Когда я открываю окно терминала с эмулятором терминала GNOME в графическом интерфейсе рабочего стола, переменная среды оболочки TERM по умолчанию принимает значение xterm. Если я использую CTL+ ALT+, F1чтобы переключиться в окно TTY консоли, и echo $TERMзначение устанавливается в linux. Моя мотивация спрашивать, что внутри моего ~/.bashrcфайла переменная используется для …

3
Как отобразить `одиночные кавычки` при использовании одинарных кавычек для переноса специальных символов в оболочке?
Сегодня я читаю учебник по оболочке от http://www.tutorialspoint.com/unix/unix-quoting-mechanisms.htm В котором упоминается: Если в строке для вывода отображается одинарная кавычка, вы не должны помещать всю строку в одинарные кавычки, вместо этого вы должны были использовать обратную косую черту () следующим образом: echo 'It\'s Shell Programming' Я пробовал это на моем сервере …
26 shell  quoting 

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