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

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

2
tmux: как связать ключ для запуска команды оболочки?
Я использую tmuxдля разработки две панели: одну для редактирования кода и одну для его компиляции. Мне нужно переключать панель очень часто, чтобы запустить команду компиляции (скажем, " mvn install"). Как я могу связать ключ (скажем, « Ctrl+ B C») для запуска этой конкретной команды в другой панели (или вообще без …
9 linux  shell  vim  tmux 


5
Как заставить xargs обрабатывать пробелы и специальные символы из cat?
У меня есть, fileкоторый содержит список имен. то есть: Long Name One (001) Long Name Two (201) Long Name Three (123) ... с пробелами и некоторыми специальными символами. Я хотел сделать каталоги из этих имен, а именно: cat file | xargs -l1 mkdir Это делает отдельные каталоги , разделенные пробелами, …

2
Как использовать нестандартную оболочку для входа в систему по ssh
В настоящее время я работаю в сети, которая использует LDAP для аутентификации. Установив в zshкачестве оболочки для входа в систему, я столкнулся с проблемой получения удаленного доступа sshк одной из машин в сети, которая, по-видимому, не была zshустановлена. Сбой входа с Dec 8 19:16:11 abert sshd[20649]: User sorokine not allowed …
9 shell  ssh  login 

5
Проверьте, все ли перечисленные пакеты установлены в bash
Мой двоичный файл зависит от этих библиотек наддува и соответствующих пакетов: NAME | PACKAGE: --------------------------------------+----------------------------------- libboost_serialization.so.1.55.0 | libboost-serialization1.55.0 libboost_thread.so.1.55.0 | ibboost-thread1.55.0 libboost_date_time.so.1.55.0 | libboost-date-time1.55.0 libboost_signals.so.1.55.0 | libboost-signals1.55.0 Итак, я хотел бы определить список пакетов: boostlibnames="libboost-serialization1.55.0 libboost-thread1.55.0 libboost-date-time1.55.0 libboost-signals1.55.0" А теперь я хотел бы проверить, все ли они установлены, и только …
9 shell  apt  dpkg 

2
Косвенно раскрыть переменные в оболочке
Мне нужно косвенно ссылаться на переменную в bashоболочке. Я в основном хочу, чтобы вы могли сделать make, написав $($(var)). Я попытался с помощью ${$var}которого было бы самым прямым решением, bashно затем я получаю эту ошибку: bash: ${$var}: bad substitution Есть ли способ сделать это? То , что я пытаюсь сделать …


5
Как мне * надежно * и * просто * получить текущее имя интерпретатора оболочки?
Я ищу простой и надежный способ получить имя текущей оболочки из скрипта или файла источника ( не из командной строки). Я хотел бы просто сделать, $(basename "$SHELL")но если моя оболочка входа в систему zshи у меня есть следующий код в some_script.sh this_shell=$( basename "$SHELL" ) echo "The Shell is $this_shell" …
9 bash  shell  zsh 

2
Как использовать многострочный как разделитель групп в grep?
В grepвы можете использовать, --group-separatorчтобы написать что-то между совпадениями группы. Это удобно, чтобы прояснить, какие блоки у нас есть, особенно когда используется -C Xопция для получения строк контекста. $ cat a hello this is me and this is something else hello hello bye i am done $ grep -C1 --group-separator="+++++++++" …
9 shell  grep  quoting 

2
Как получить UUID файловой системы по заданному пути?
Мне вручают путь к каталогу или файлу. Какая утилита / сценарий оболочки надежно выдаст мне UUID файловой системы, в которой находится этот каталог / файл? Под UUID файловой системы я подразумеваю UUID=...запись, как показано, например,blkid Я использую Redhat Linux. (кто-то предложил мне спросить об этом здесь, на unix.stackexchange.com, поэтому я …

1
Понимание прохождения символьных ссылок каталога и родительского каталога
Допустим, у вас есть каталоги /dir1и /dir2/linked, где последний является символической ссылкой на первый. Когда вы cdв linkedи pwdвы получите выход /dir2/linked. Если вы тогда cd .., вы будете надеты /dir2. Такое поведение согласуется с концепцией того, что вы были /dir2/linkedраньше. Однако, насколько я понимаю, родительский каталог ( ..) любого …

3
Как мне захватить стандартный ввод переменной, не убирая завершающие символы новой строки?
В сценарии оболочки ... Как мне захватить стандартный ввод переменной, не убирая завершающие символы новой строки? Прямо сейчас я попробовал: var=`cat` var=`tee` var=$(tee) Во всех случаях $varне будет завершающей новой строки входного потока. Спасибо. ТАКЖЕ: Если на входе нет завершающего символа новой строки, то решение не должно добавлять его . …

6
Используйте оболочку, не установленную на удаленной машине
Учитывая сценарий: Удаленная машина: SSH сервер; пользователь не имеет прав администратора; Локальный компьютер: клиент SSH; Пользователь имеет права администратора. Если пользователь , входящий в систему с удаленного компьютера с локального компьютера , желает взаимодействовать с удаленным пользователем с помощью оболочки, не установленной на удаленном компьютере , как пользователь может выполнить …

1
Получение идентификатора процесса из команды, запущенной с помощью «su -c»
Я запускаю Java-программу внутри оболочки и записываю идентификатор процесса в текстовый файл. Итак, когда я делаю это: nohup java app.Main > /dev/null 2>&1 & echo $! > /var/run/app.pid Оно работает. Но я действительно хочу запустить его как другой пользователь su - appuser -c "nohup java app.Main > /dev/null 2>&1 &" …
9 bash  shell  su 

1
восстановить xorg.conf с текущими настройками
Многие говорили об этой проблеме, но я не нашел удовлетворительного ответа. Я на дебиан Джесси. В настоящее время я пробовал nvidia-driverв качестве драйвера, но это вызвало сбой системы; поэтому я очистил все nvidiaпакеты. Но проблема в том, что /etc/X11/xorg.confбыл заменен настройками NVidia, а резервная копия xorg.conf.backupудалена. Соответствующая конфигурация, установленная NVidia: …

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