Unix & Linux

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

5
Использование подстановки параметров в массиве Bash
У меня есть file.txt, который мне нужно прочитать в массив Bash. Затем мне нужно удалить пробелы, двойные кавычки и все, кроме первой запятой в каждой записи . Вот как далеко я продвинулся: $ cat file.txt 10,this 2 0 , i s 30,"all" 40,I 50,n,e,e,d,2 60",s e,e" $ cat script.sh #!/bin/bash …

6
Каковы преимущества использования `make` для небольших проектов? [закрыто]
Закрыто . Этот вопрос основан на мнении . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы ответить на него фактами и цитатами, отредактировав этот пост . Закрыто в прошлом году . Я видел, что makeэто полезно для больших проектов, особенно с запутанными зависимостями, описанными …

1
Почему я не вижу разницы между двумя разными файлами в режиме вставки в vim?
Давайте создадим два файла: $ echo -n 'test' > test.txt $ wc test.txt 0 1 4 test.txt Файл test.txtне содержит завершающий перевод строки. $ echo 'test' > test_n.txt $ wc test_n.txt 1 1 5 test_n.txt Файл test_n.txtсодержит завершающий перевод строки. Эти два файла, очевидно , разные, но предварительный просмотр обоих …
8 vim  newlines  vi-mode 

2
Как я могу создать массив из первой строки нескольких источников текста?
У меня есть массив путей к файлам, каждый из которых имеет несколько строк текста. Я хотел бы создать массив, который заполняется первой строкой каждого файла, обработанного следующим образом: # this.txt first line is [Test this] # another.txt first line is [Test another] paths=( ./this/path/this.txt ./another/path/another.txt ) for i in ${paths[@]}; …

2
псевдонимы bash не расширяются даже с shopt expand_aliases
Я хочу запустить псевдоним внутри bash -cконструкции. В bashруководстве сказано: Псевдонимы не раскрываются, когда оболочка не является интерактивной, если параметр expand_aliasesоболочки не установлен с помощьюshopt В этом примере почему псевдоним hiне найден при expand_aliasesявной настройке ? % bash -O expand_aliases -c "alias hi='echo hello'; alias; shopt expand_aliases; hi" alias hi='echo …
8 bash  alias 

6
Проверка на наличие нескольких каталогов
Я хочу проверить наличие нескольких каталогов, скажем dir1, dir2и dir3в рабочем каталоге. У меня есть следующее if [ -d "$PWD/dir1" ] && [ -d "$PWD/dir2" ] && [ -d "$PWD/dir3" ]; then echo True else echo False fi Но я подозреваю, что есть более элегантный способ сделать это. Не думайте, …

1
Разрешить безопасное поведение определенной программы в SELinux
У меня есть программа, работающая внутри контейнера Docker, который загружает файл .so, который изменяет поведение программы посредством перехвата и манипулирования памятью. Это поведение блокируется SELinux со следующим сообщением в журнале аудита: type = AVC msg = аудит (1548166862.066: 2419): avc: отказано {execheap} для pid = 11171 comm = "myProgram" scontext …
8 docker  selinux 

4
Почему я не вижу работу «wget», когда выполняю ее в фоновом режиме?
Я использую wgetкоманду в фоновом режиме, как это wget -bq и это печатает Продолжая в фоновом режиме, pid 31754. Но когда я набираю команду jobs, я не вижу свою работу (хотя загрузка еще не завершена).

2
Требуется объяснение того, как я могу повторить символ в оболочке POSIX
Следующий ответ на переполнение стека, Как я могу повторить символ в Bash? навязывает один правдоподобный способ POSIX - только повторение одного символа следующим образом. В этом примере давайте используем знак равенства 100 раз: printf %100s | tr " " "=" Моя проблема в том, что я не понимаю, как это …
8 shell  posix  printf  tr 

1
Ссылки на элементы массива по строкам и инициализация массивов в awk
#!/usr/bin/env bash awk ' BEGIN { arr[A]=1; arr[B]=1; arr[C]=1; arr[E]=1; arr[J]=8; arr[Q]=10; print arr[J] }' Приведенная выше команда выводит последнее установленное значение для arr['subscript'], в данном случае 10это значение arr[Q]непосредственно перед, printа не 8значение arr[J]. Кроме того, как и в приведенном выше сценарии, я не хочу присваивать значения arr['A'], arr['B'], …
8 awk  array 

5
Как перечислить * .tar.gz, одно имя файла в строке?
Я пытаюсь перечислить каждый .tar.gzфайл, используя только следующую команду: ls *.tar.gz -l ... Это показывает мне следующий список: -rw-rw-r-- 1 osm osm 949 Nov 27 16:17 file1.tar.gz -rw-rw-r-- 1 osm osm 949 Nov 27 16:17 file2.tar.gz Однако мне просто нужно перечислить это так: file1.tar.gz file2.tar.gz а также нет: file1.tar.gz file2.tar.gz …
8 ls 

1
sshfs: привязать всех пользователей без полномочий root к определенной директории
На сервере мне нужен неограниченный доступ по SSH для root, и ограниченный для всех остальных пользователей. Я хотел бы ограничить всех пользователей без полномочий root: нет входа в SSH разрешено только монтировать /mnt/data/используяsshfs Я вижу, sshd_configпозволяет использовать Match User, то есть: Match User john ChrootDirectory /mnt/data/ ForceCommand internal-sftp AllowTCPForwarding no …
8 ssh  sftp  sshfs 

2
Условное включение системных файлов через пакет Debian
Я создал пакет deb , который устанавливает сервис. На наших встроенных устройствах я хочу, чтобы этот пакет автоматически включал службу. На наших рабочих станциях для разработчиков я хочу, чтобы разработчики systemctl start fooработали вручную (это тяжелый сервис, поэтому он просто потребляет ресурсы, если все время работает в среде рабочего стола). …
8 systemd  dpkg 

5
find exec '{}' недоступен после>
Exec позволяет нам передавать все аргументы одновременно {} +или передавать их по одному{} \; Теперь предположим, что я хочу переименовать все в формате JPEG , без проблем это сделать: find . \( -name '*.jpg' -o -name '*.jpeg' \) -exec mv '{}' '{}'.new \; Но если мне нужно перенаправить вывод, '{}'не …
8 bash  find 

1
Изменить семейство шрифтов для символов определенного языка / сценария с помощью fontconfig?
Я нахожусь на Arch Linux, Deepin Desktop. Я использую Noto Serif в качестве стандартного шрифта, но мне не нравятся его арабские символы. Поэтому моя цель - использовать другой шрифт только для арабских символов. Вот что я попробовал. Я создал новый файл конфигурации /etc/fonts/conf.d/со следующим содержанием: <?xml version="1.0"?> <!DOCTYPE fontconfig SYSTEM …

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