Unix & Linux

Вопросы и ответы для пользователей Linux, FreeBSD и других Un * x-подобных операционных систем

3
Как я могу безопасно убедиться, что переменная содержит только правильное имя файла?
Учитывая приведенный ниже сценарий, как я могу убедиться, что аргумент содержит только допустимое имя файла, /home/charlesingalls/а не путь ( ../home/carolineingalls/), подстановочный знак и т. Д.? Я только хочу, чтобы скрипт мог удалить один файл из заданного жестко закодированного каталога. Этот скрипт будет запускаться как привилегированный пользователь. #!/bin/bash rm -f /home/charlesingalls/"$1"

3
Сравнение более двух файлов, содержащих числовые значения
У меня есть три файла, содержащие отсортированную последовательность чисел, по одному на строку: file1 1 2 3 file2 1 3 4 file3 1 5 Я хочу "выровнять" эти три файла рядом, как показано ниже: file1 file2 file3 1 1 1 2 3 3 4 5 Я пытался с, sdiffно он …

2
Читайте специальные ключи в Bash
Я играю со сценарием, который, помимо прочего, перечисляет список выбора. Как в:1) Пункт 1 # (выделено) 2) Пункт 2 3) Пункт 3 # (выбранный) 4) Пункт 4 Когда пользователь нажимает down-arrowследующие пункты, выделяется Когда пользователь нажимает up-arrowпредыдущие элементы, выделяется и т.п. Когда пользователь нажимает tabэлемент Когда пользователь нажимает shift+tabвсе элементы …
8 bash  keyboard 

1
Как я могу программно получить доступ к zsh-завершению?
Zsh имеет систему завершения, активируемую нажатием вкладки: llama@llama:~$ git st<Tab> Completing main porcelain command stash -- stash away changes to dirty working directory status -- show working-tree status Completing plumbing internal helper command stripspace -- filter out empty lines Все, что мне удалось выяснить, это то, что это происходит из …

3
Монтирование каталога NFS в том хоста, который используется совместно с Docker
Рассмотрим следующий контейнер Docker: docker run --rm -it -v /tmp:/mnt/tmp alpine sh Это монтирует каталог хоста / tmp в / mnt / tmp внутри контейнера alpine. Теперь в хост-системе я монтирую том NFS в каталог / tmp: mkdir /tmp/nfs mount -t nfs4 192.168.1.100:/data /tmp/nfs Монтирование работает на хост-системе, и я …
8 nfs  docker 

4
Мне нужно найти все домашние каталоги пользователей, перечисленные с помощью grep из / etc / passwd
У меня есть вопрос, похожий на другой на этом сайте, где человек должен был найти список всех пользователей, использующих grep или awk из / etc / passwd. Это сработало для меня, но я попытался перевести его, чтобы найти и перечислить домашние каталоги. Я уже знаю, что вы не можете сделать …

5
Как найти строки, начинающиеся с **
Мне нужно найти, если какие-либо строки в файле начинаются с **. Я не могу понять, как это сделать, потому что *интерпретируется оболочкой как подстановочный знак. grep -i "^2" test.out работает, если строка начинается с 2, но grep -i "^**" test.out очевидно не работает. (Мне также нужно знать, заканчивается ли эта …

2
Отключить кнопку питания на Chromebook
У меня есть Chromebook, на котором я установил Arch Linux. Тем не менее, этот Chromebook поставляется с очень странной клавишей: клавишей «Power On / Off» в правом верхнем углу клавиатуры. Без ЛЮБОГО предупреждения эта кнопка выключает компьютер. Естественно, я нажимал эту клавишу, когда искал клавишу возврата или когда мой палец …

3
Автоматическое переключение дисплея на док-станцию ​​Lenovo и Linux
У меня есть Lenovo ThinkPad с NVIDIA Optimus и мини-док-станция серии 3 . Я хочу, чтобы во время пристыковки он автоматически переключался на внешний монитор, если это возможно, и если я отстыковываю его, он должен автоматически переключаться на ЖК-монитор ThinkPad. Это также должно работать на этапе загрузки, потому что там …
8 linux  udev  xrandr  acpi  thinkpad 

1
Почему имя интерфейса моей беспроводной карты изменилось, когда я добавил звуковую карту?
Предсказуемые имена сетевых интерфейсов не должны изменяться при добавлении или удалении оборудования. Разве это не весь смысл схемы именования ??? Мой беспроводной интерфейс был назван wlp3s0. Я установил звуковую карту интерфейса PCI Express x1 ASUS Xonar DX 7.1 в свободный слот PCI, и имя моего беспроводного интерфейса изменилось на wlp5s0. …

3
Разрешение имени хоста занимает 5 секунд
У меня есть главный bind9DNS-сервер и 2 подчиненных сервера, работающих на IPv4 (Debian Jessie), использующих /etc/bind/named.conf: listen-on-v6 { none; }; Когда я пытаюсь подключиться с разных серверов, каждое соединение занимает не менее 5 секунд (я использую информацию о времени Джозефа для отладки): $ curl -w "@curl-format.txt" -o /dev/null -s https://example.com …
8 debian  dns  ipv6  bind  nslookup 

2
Как регистрировать вызовы, используя скрипт-обертку, когда есть несколько символических ссылок на исполняемый файл
Короче говоря: я хотел бы отследить способ вызова некоторых исполняемых файлов для отслеживания поведения системы. Допустим, у меня есть исполняемый файл: /usr/bin/do_stuff И он на самом деле вызывается несколькими разными именами через символическую ссылку: /usr/bin/make_tea -> /usr/bin/do_stuff /usr/bin/make_coffee -> /usr/bin/do_stuff и так далее. Очевидно, do_stuffчто будет использоваться первый полученный аргумент, …


2
Сколько памяти использует конкретный пользователь
Можно ли узнать, сколько памяти я использую на многопользовательской машине Linux? Я хочу знать, использую ли я много памяти и, возможно, причиняю неудобства другим, чтобы при необходимости закрыть свои процессы. Я видел в другом вопросе, что sa -mможет сделать это, но у меня, очевидно, нет доступа к этой команде на …
8 users  memory 

1
Startx не рекомендуется?
startx говорит: -------------------------------------------------------------------------------------------- xinit failed. /usr/bin/Xorg is not setuid, maybe that's the reason? If so either use a display manager (strongly recommended) or adjust /etc/permissions.local and run "chkstat --system --set" afterwards Очевидно, я могу chmod 4775 /usr/bin/Xorg, и это будет работать, пока следующее обновление Xorg снова не удалит бит suid. …
8 startx 

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