Bash-скрипт, чтобы запустить tmux и выдавать команды

Я хочу использовать скрипт Наутилус открыть (гном-) клемму с сессии tmux (или начать) в определенном месте, а затем выполнить несколько команд в терминале (например, файл nvim $).

Я, однако, обнаружил 2 проблемы: 1: у меня есть "запустить пользовательскую команду вместо моей оболочки" в "tmux", таких, что каждый терминал начинается в сессии tmux. Это, кажется, отрицает возможности открытия терминала в данном месте. Что я постарался положить исполняемый test.sh файл в ~/.местные/доли/Наутилус/скрипты/ с содержание:

#!/бин/Баш
гном-терминал-работа-каталог=$NAUTILUS_SCRIPT_CURRENT_URI 

это работает на пустой профиль. С "tmux" как стартап-команд, однако, я просто получаю пустой терминал в ~

2: Если я пытаюсь использовать любую команду после этого ничего не происходит.

nvim some_file_there

ничего не делает, просто как эхо "привет" и старпомов Эхо 'привет'

Может кто-то объяснить поведение ко мне?

Тем временем я отключил "выполнение пользовательской команды" настройка в терминале. Однако, до сих пор я могу только изменить рабочий каталог (открыть терминал здесь), но не может выдавать каких-либо дальнейших команд.

Мой новый тестовый скрипт, содержащий только:

#!/бин/Баш
Зениты --информация --текст="$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS"
гном-терминал-Е "ЛС"

Влияет ли как-то изменить рабочий каталог на тот, что скрипт Наутилуса начинается с! Также он показывает результаты команды ls, но в терминале диалоговое группа упала в синий сказав: "дочерний процесс завершился нормально со статусом 0." И кнопка перезапуска справа. - Я думаю, это означает, что новый сеанс или терминал или настолько запущено (ребенка), но это не продолжать, такие, которые я мог бы в конечном итоге использовать его!?

Может кто-то может прояснить, что происходит здесь?

+509
Soufi Hamli 16 июл. 2019 г., 04:46:15
28 ответов

Есть несколько проблем с вашим вопросом.

Линии

4>&1 1>&3

Отсутствует ехес:

старпома 4>&1 1>&3

И линии:

в exec 1>4&-

Следует читать:

в exec 1>&4-

Упрощенный сценарий должен выглядеть как этот:

Метода getString()
{
 старпома 4>&1 1>&3 #сохранение конца трубы и изменение выходного сигнала обратно на абонента
 е "некоторые вещи для интерактивных пользователей\Н"
 сна 3 
 экзек >&4- #изменение выходного сигнала обратно на конец трубы
 Эхо "тестовое значение"
}

в exec 3>&1
строка=$(метода getString)
Эхо "конечное значение <$строка>"

Этот сценарий имеет смысл.

Пожалуйста, отредактируйте вопрос, чтобы фактически воспроизвести вашу проблему.

+991
sasan zare 03 февр. '09 в 4:24

несколько раз мы замечали конфликты в файл /etc/fstab строчку как в следующем примере

в /dev/СДГ появляется дважды !

/данных/СДБ появляется дважды !

#
# в /etc/fstab строчку
# Создается Анаконда в среду 9 ноября 13:26:03 2016
#
Доступные файловые системы#, по ссылке, поддерживаются в 'в/dev/диск'
Видишь, человек страниц файл fstab(5), findfs(8), держатель(8) и/или blkid(8) Подробнее
#
/Дев/маппер/vg00-ОС-linux_root по умолчанию / по умолчанию 
0 0
Идентификатор UUID=cc749f07-ad72-49e8-ab19-ec6532f5e9 /загрузки файловой системы XFS 
по умолчанию 0 0
/Дев/маппер/vg00-ОС-linux_var /Вар по умолчанию файловой системы XFS 
0 0
/Дев/маппер/vg00-ОС-linux_swap по умолчанию своп своп 
0 0


файл /dev/sdc в /данные/шурс системы ext4 по умолчанию,существует два метода 0 0
файл /dev/СКБ /данные/СДБ системы ext4 по умолчанию,существует два метода 0 0
/разработки/Сде - /данные/Сде-системы ext4 по умолчанию,существует два метода 0 0
файл /dev/ФСР /данные/ФСР системы ext4 по умолчанию,существует два метода 0 0
файл /dev/СДД /данные/СДД системы ext4 по умолчанию,существует два метода 0 0
файл /dev/СДГ /данные/СДБ системы ext4 по умолчанию,существует два метода 0 0
файл /dev/СДГ /данные/СДГ системы ext4 по умолчанию,существует два метода 0 0
/разработки/СДГ /данных/локальных сетей и SDH системы ext4 по умолчанию,существует два метода 0 0
файл /dev/СДИ /сведения/СДИ системы ext4 по умолчанию,существует два метода 0 0
/разработки/старший районный судья /данных/старший районный судья в ext4 по умолчанию,существует два метода 0 0
файл /dev/СДК /данные/СДК в ext4 по умолчанию,существует два метода 0 0
файл /dev/СДЛ /данные/СДЛ в ext4 по умолчанию,существует два метода 0 0

мы хотим создать простой проверки, чтобы найти конфликты на первое поле и второе поле в файл fstab

какой лучший синтаксис для этого ?

проверки должны найти повторяющиеся слова в первом поле и во втором поле ( синтаксис строки должны быть короткими насколько возможно )

ожидаемый результат - сбой / ОК

& ( необходимо распечатать все дублируется слово из первого поля второе поле в случае провала )

+978
dave1974 4 нояб. 2013 г., 13:07:33
Другие ответы

Связанные вопросы


Похожие вопросы

найти . опции-mtime +3 -тип F -не -имя '*пид*' |команды xargs РМ -РФ
+965
GyeongWon Do 1 нояб. 2012 г., 03:26:50

Я на Linux минут. Я хочу установить Ubuntu на моем Mac. Погугли как установить с USB флешки я нашел в этом руководстве https://tecadmin.net/how-to-create-bootable-linux-usb-using-ubuntu-or-linuxmint/ и Шаг 1

$ судо дополнения кв-репозиторий PPA:gezakovacs/ППА
$ судо apt-получить обновление
$ судо apt-получить установку помощи UNetbootin

Так что я сделать эти три шага, но получаю сообщение об ошибке. Я только использую Linux несколько часов и я не очень силен в толковании командной строке сообщения об ошибке. Что же сообщении после "Е" значить, означать и как решить эту проблему?

Во-первых, добавить АПТ репозитория

Яков@Джейкоб-в Linux ~ $ судо дополнения кв-репозиторий PPA:gezakovacs/ППА
[суда] пароль для Иакова: 
Вы собираетесь добавить следующий PPA в систему:
 Помощи UNetbootin http://unetbootin.github.io/ является кросс-платформенным утилита, которая может создать Live USB-системам и может загружать различные системные утилиты или установить различные дистрибутивы Linux и другие операционные системы без компакт-диска.

Домашняя страница: http://unetbootin.github.io/
Вики: http://unetbootin.wiki.sourceforge.net/
Загрузок: http://sourceforge.net/project/showfiles.php?group_id=222386
На SourceForge: http://sourceforge.net/projects/unetbootin
На Launchpad: http://launchpad.net/unetbootin
 Подробнее: https://launchpad.net/~gezakovacs/+архив/Убунту/ППА
Нажмите [Enter] для продолжения или CTRL-C для отмены добавления

Исполнитель: грот --игнорировать-времени-конфликт --без вариантов --нет-по умолчанию-брелок --домашний каталог в /tmp в/tmp.EYA8k2K63S ... нет-автоматической проверки-базы данных доверия --Доверие-модели всегда ... кольцо для ключей /и т. д./кв/надежные.Гоб-главное-кольцо для ключей /и т. д./кв/надежные.Гоб --сервера ключей://сервер.Убунту.сом:80 --приема-ключи FC91AE7E
у GPG: запрашиваю ключ FC91AE7E от ХКП keyserver.ubuntu.com сервер 
Гоб: FC91AE7E ключа: открытый ключ "Launchpad в PPA для Геза Ковач" импортное
ключей GPG: всего обработано: 1
у GPG: импортировано: 1 (RSA в: 1)

Во-вторых, apt-получить обновление

Джейкоб@Джейкоб-в Linux ~ $ судо apt-получить обновление
Игн стабильный InRelease http://dl.google.com 
Игн http://archive.ubuntu.com верный InRelease 
Сделать:1 верный http://ppa.launchpad.net InRelease [15,4 КБ] 
Игн http://archive.canonical.com верный InRelease 
Нажмите http://dl.google.com стабильный релиз.Гоб 
Нажмите стабильный релиз http://dl.google.com 
Получаем:2 http://archive.ubuntu.com верный-обновления InRelease [65,9 КБ] 
Нажмите http://archive.canonical.com верного освобождения.Гоб 
Игн верный http://ppa.launchpad.net InRelease 
Вам:3 http://security.ubuntu.com верный-безопасности InRelease [65,9 КБ] 
Нажмите верного выхода http://archive.canonical.com 
Игн верный http://ppa.launchpad.net InRelease 
Нажмите http://repository.spotify.com стабильный InRelease 
Игн http://extra.linuxmint.com Роза InRelease 
Игн http://packages.linuxmint.com Роза InRelease 
Нажмите http://archive.ubuntu.com верного освобождения.Гоб 
Нажмите http://ppa.launchpad.net верного освобождения.Гоб 
Хит релиз http://packages.linuxmint.com Роза.Гоб 
Хит релиз http://extra.linuxmint.com Роза.Гоб 
Нажмите http://dl.google.com стабильный/главная пакеты для amd64 
Нажмите http://ppa.launchpad.net верного освобождения.Гоб 
Нажмите верного выхода http://archive.ubuntu.com 
Нажмите http://archive.canonical.com верный/партнерские пакеты для amd64 
Нажмите http://dl.google.com стабильный/главная пакеты для i386 
Получите:4 http://archive.ubuntu.com верный-обновления/главная пакеты для amd64 [995 КБ] 
Нажмите верного выхода http://ppa.launchpad.net 
Нажмите http://archive.canonical.com надежный партнер пакеты для i386 
Нажмите http://repository.spotify.com стабильный/несвободные пакеты для amd64 
Получаем:5 http://ppa.launchpad.net верный/основных источников [816 B] в 
Нажмите http://archive.canonical.com верный/перевод-Ан партнер 
Нажмите http://repository.spotify.com стабильный/несвободные пакеты для i386 
Получаем:6 http://ppa.launchpad.net верный/главная пакеты для amd64 [835 B] в 
Получаем:7 http://security.ubuntu.com верный-системы безопасности/главная пакеты для amd64 [628 КБ] 
Получаем:8 http://ppa.launchpad.net верный/главная пакеты для i386 [841 Б] 
Хит релиз http://packages.linuxmint.com Роза 
Хит релиз http://extra.linuxmint.com Роза 
Получаем:9 http://archive.ubuntu.com верный-обновления/ограничены для amd64 пакеты [17,1 КБ]
Получаем:10 http://ppa.launchpad.net верный/главная перевод-Ан [401 Б] 
Игн http://repository.spotify.com стабильный/не-вольный перевод-язык 
Игн http://repository.spotify.com стабильный/не-вольный перевод-Ан 
Получаем:11 http://archive.ubuntu.com верный-обновления/Вселенная пакеты для amd64 [417 КБ]
Нажмите верного выхода http://ppa.launchpad.net 
Нажмите http://ppa.launchpad.net верный/основных источников 
Нажмите http://ppa.launchpad.net верный/главная пакеты для amd64 
Игн http://dl.google.com стабильный/главная перевод-язык 
Нажмите http://ppa.launchpad.net верный/главная пакеты для i386 
Игн http://dl.google.com стабильный/основной перевод-Ан 
Нажмите http://packages.linuxmint.com Роза/главная пакеты для amd64 
Нажмите http://extra.linuxmint.com Роза/главная пакеты для amd64 
Получаем:12 http://security.ubuntu.com верный-безопасности/проприетарные пакеты для amd64 [14,0 КБ]
Нажмите http://ppa.launchpad.net верный/основных источников 
Нажмите http://ppa.launchpad.net верный/главная пакеты для amd64 
Получаем:13 http://security.ubuntu.com верный-безопасности/Вселенная пакеты для amd64 [172 КБ]
Нажмите http://ppa.launchpad.net верный/главная пакеты для i386 
Получаем:14 http://archive.ubuntu.com верный-обновления/мультивселенной пакеты для amd64 [14,3 КБ]
Получаем:15 http://archive.ubuntu.com верный-обновления/главная пакеты для i386 [948 КБ] 
Нажмите http://ppa.launchpad.net верный/главная перевод-Ан 
Нажмите http://packages.linuxmint.com Роза/вверх для amd64 пакеты 
Нажмите http://extra.linuxmint.com Роза/главная пакеты для i386 
Получаем:16 http://security.ubuntu.com верный-безопасности/мультивселенной пакеты для amd64 [4 135 Б]
Получаем:17 http://security.ubuntu.com верный-системы безопасности/главная пакеты для i386 [583 КБ] 
Получаем:18 http://archive.ubuntu.com верный-обновления/ограниченные пакеты для i386 [16,9 КБ]
Получим:19 http://archive.ubuntu.com верный-обновления/Вселенная пакеты для i386 [419 КБ]
Нажмите http://packages.linuxmint.com Роза/импорт пакеты для amd64 
Игн http://ppa.launchpad.net верный/главная перевод-язык 
Игн http://ppa.launchpad.net верный/главная перевод-Ан 
Нажмите http://packages.linuxmint.com Роза/главная пакеты для i386 
Получаем:20 http://archive.ubuntu.com верный-обновления/мультивселенной пакеты для i386 [14,6 КБ]
Получаем:21 http://archive.ubuntu.com верный-обновления/главная перевод-Ан [489 КБ] 
Получаем:22 http://archive.ubuntu.com верный-обновления/перевод-Ан мультивселенной [7 430 Б]
Получаем:23 http://archive.ubuntu.com верный-обновления/запрещен перевод-Ан [3 978 Б]
Нажмите http://packages.linuxmint.com Роза/вверх по течению пакеты для i386 
Получаем:24 http://archive.ubuntu.com верный-обновления/Вселенная перевод-Ан [223 КБ]
Нажмите http://archive.ubuntu.com верный/главная пакеты для amd64 
Нажмите http://archive.ubuntu.com верный/ограниченные пакеты для amd64 
Нажмите http://archive.ubuntu.com верный/Вселенная пакеты для amd64 
Нажмите http://packages.linuxmint.com Роза/импорт пакеты для i386 
Нажмите http://archive.ubuntu.com верный/мультивселенной пакеты для amd64 
Нажмите http://archive.ubuntu.com верный/главная пакеты для i386 
Нажмите http://archive.ubuntu.com верный/ограниченные пакеты для i386 
Нажмите http://archive.ubuntu.com верный/Вселенная пакеты для i386 
Нажмите http://archive.ubuntu.com верный/мультивселенной пакеты для i386 
Нажмите http://archive.ubuntu.com верный/главная перевод-Ан 
Нажмите http://archive.ubuntu.com верный/перевод-Ан мультивселенной 
Нажмите http://archive.ubuntu.com верный/запрещен перевод-Ан 
Игн http://extra.linuxmint.com Роза/главная перевод-язык 
Нажмите http://archive.ubuntu.com верный/перевод-собственной вселенной 
Получаем:25 http://security.ubuntu.com верный-безопасности/ограниченные пакеты для i386 [13,7 КБ]
Игн http://extra.linuxmint.com Роза/главная перевод-Ан 
Получите:26 http://security.ubuntu.com верный-безопасности/Вселенная пакеты для i386 [173 КБ]
Получаете:27 http://security.ubuntu.com верный-безопасности/мультивселенной пакеты для i386 [4 290 Б]
Получаем:28 http://security.ubuntu.com верный-системы безопасности/главная перевод-Ан [340 КБ] 
Получаете:29 http://security.ubuntu.com верный-безопасности/мультивселенная перевод-Ан [2 201 б]
Игн http://archive.ubuntu.com верный/главная перевод-язык 
Получаем:30 http://security.ubuntu.com верный-безопасности/запрещен перевод-Ан [3 491 Б]
Игн http://archive.ubuntu.com верный/перевод-язык мультивселенной 
Игн http://archive.ubuntu.com верный/запрещен перевод-язык 
Получаете:31 http://security.ubuntu.com верный-безопасности/Вселенная перевод-Ан [99,6 КБ]
Игн http://archive.ubuntu.com верный/перевод-язык Вселенной 
Игн http://packages.linuxmint.com Роза/перевод-язык импорт 
Игн http://packages.linuxmint.com Роза/перевод-Эн импорт 
Игн http://packages.linuxmint.com Роза/главная перевод-язык 
Игн http://packages.linuxmint.com Роза/главная перевод-Ан 
Игн http://packages.linuxmint.com Роза/перевод-язык апстрим 
Игн http://packages.linuxmint.com Роза/перевод-Ан течению 
Извлечена 5 754 КБ 6С (841 кб/с) 
Чтение списков пакетов... ошибка!
Вт: нет открытый ключ доступен для следующих ключевых идентификаторов:
1397BC53640DB551
Е: перестал работать раздел без пакета: заголовок
Е: проблема с MergeList /ВАР/Либ/АПТ/списки/пакеты.сайт linuxmint.com_dists_rosa_upstream_i18n_Translation-Ан
Е: списки пакетов или файл состояния не могут быть разобраны или открыт.

в-третьих, установить помощи UNetbootin

Джейкоб@Джейкоб-в Linux ~ $ судо apt-получить установку помощи UNetbootin
Чтение списков пакетов... ошибка!
Е: перестал работать раздел без пакета: заголовок
Е: проблема с MergeList /ВАР/Либ/АПТ/списки/пакеты.сайт linuxmint.com_dists_rosa_upstream_i18n_Translation-Ан
Е: списки пакетов или файл состояния не могут быть разобраны или открыт.
Джейкоб@Джейкоб-Линукс ~ $ 
+947
noonex 8 мар. 2015 г., 10:53:34

Через Неум,

$ Эхо '/какой/реж/пример/' | на awk -F' и/' -в ОФС='/' '{ печати $3,$4FS}'
реж/пример/

Или

$ Эхо '/некоторые/пример Дира//' | на awk -F' и/' '{ печати 3FS $$4FS}'
реж/пример/
+937
cgalvarez 9 окт. 2014 г., 20:35:56

Вот кусок скрипта

#!/бин/Баш

Путь=/ОГРН: файл/sbin:/usr/Бен: выполнить/sbin

префикс=1

пока читал ссылку; делать
 имяфайла="$(е "%03д" $префикс)_${ссылка##*/}"
 эхо "с wget $ссылка -о $имя_файла"
префикс=$((префикс+1))
сделал < <(кошка /tmp/и список)

очевидно, снять в эхо на wget для того, чтобы выполнить команду по-настоящему

результат:

$ Баш script.sh
с wget example.com/ddk.zip -о 001_ddk.zip
с wget example.com/453.zip -о 002_453.zip
с wget example.com/hth.zip -о 003_hth.zip
с wget example.com/ddhth.zip -о 004_ddhth.zip
с wget example.com/hggth.zip -о 005_hggth.zip
с wget example.com/jhkhth.zip -о 006_jhkhth.zip

И да, вам нужно отредактировать ваш список ссылок и добавление HTTP:// или https:// перед

+899
Shaun McDonnell 23 февр. 2013 г., 07:37:17

У меня Сагер ноутбука NP8130 с двумя портами USB 3.0, которые я не могу приступить к работе в любое дистрибутивов Linux, которые я пробовал. Дистрибутивы я пытался до сих пор являются последними 64-разрядных (если таковые имеются) варианты следующие:

  • Убунту
  • Мятный
  • В openSUSE
  • Управлением crunchbang
  • Арка

В каждом дистрибутиве я проверял порт с двух устройств, разъем USB 3.0 супер талант 8ГБ Экспресс дуо флэш-накопитель и USB 2.0 оптическая мышь от Logitech. Когда я подключите флэш-диск в нем будет светиться, сигнализируя он получает питание от порта но привод не пытается смонтировать. Когда я подключите мышь в оптический лазер не светится и кажется совершенно нефункциональным. В каждом случае я также подключил оба устройства к порту USB 2.0, который работал, как ожидалось.

Следует отметить, что оба USB 3.0 порты прекрасно работают в операционной системе Windows 7, который шел с ноутбуком, с окнами, даже не сказав мне мое устройство может работать быстрее при подключении флэшки в USB 2.0 порт, но не дает мне такое сообщение, когда я использую 3.0 портов.

Исследования Google говорят, что поддержка USB 3.0 должны были в ядре Linux, начиная примерно с 2009 года, так что я думаю это не проблема с какой-либо конкретной рассылки. Я слышал, как другие отчеты, работать с USB 3.0 отлично, так что мой дилетантский подозрение, что это не вопрос поддержки протокола столько, сколько скорее всего проблема драйвера.

Я не уверен, что команды будут добывать любую необходимую информацию диагностике, но если кто-то хотел бы, чтобы я копировать/вставить результаты любой команды, просто дайте мне знать в комментариях и я буду обновлять этот вопрос.

Спасибо

+885
beast boy 26 февр. 2015 г., 15:43:14

Я установил библиотеки(например лзма-дев) с помощью диспетчера пакетов(например apt-получить на Дебиан или Убунту). Как я могу его использовать? Где я могу найти либы и заголовки? Как насчет такс(динамические библиотеки)?

+742
Karkoura 25 нояб. 2013 г., 14:17:49

Вы могли бы начать с

на Perl -ЧП 'ы/,/./г;с/ +/, rules.txt/г' 

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

( +) это синоним ( {2,}) оба означают "два или более пробелов". На "+" стоит два пробела, но клиент StackExchange встроенные блоки кода не уважают пробелы...

+741
David Veck 6 июл. 2013 г., 08:44:10

Я хочу, чтобы мой компьютер на выключение сразу после того, как я закрою удаленного подключения remmina. Я искал решения, но сама remmina показывает аномальное поведение.

someprogram && sudo остановки-h 0

Работает эта команда работает, и ПК выключается после закрытия someprogram. Однако, это работает только потому, что someprogram останавливает терминальной сессии, пока он закрыт. После чего выключение судо могут выполнять

remmina -с путь/к/подключение/файл && sudo остановки-h 0

Выполнив эту команду выключается компьютер сразу после remmina делаешь прекратить сеанс терминала. Я бы remmina иметь такое же поведение как someprogramm. Это как-то выполнимо, чтобы сделать remmina, чтобы остановить сессию?

Пример:

в Firefox && sudo остановки-h 0

Компьютер выключается после того, как Firefox закрыт.

remmina && sudo остановки-h 0

Компьютер выключается сразу.

+721
Michael Gierer 28 авг. 2013 г., 22:10:50

Прочитайте эту статью: https://www.pcsuggest.com/chromium-hardware-accelerated-video-decoding-linux/

Он очень хорошо объясняет, как действовать.

Я не уверен, что с Линукс Минт, но я могу подтвердить это работает в Ubuntu 16.04 и 18.04.

+717
Jansen du Plessis 29 сент. 2015 г., 18:27:09

Сказать, что nginx виртуального хоста слушать на конкретный IP. Nginx и плевать на интерфейс, ведь вы слушаете на IP и конечно же порты. Как долго, как ваш псевдоним и IP правильно направляется, то nginx может слушать на нем.

Я надеюсь, что помогает.

Тл;др nginx и не заботится, он просто хочет знать, какой IP

+670
user53153 17 июн. 2014 г., 16:11:24

Содержимое файла по имени файла

тестирование 1
тестирование 2

Команда протестировала

в exec 3<> ./ТМП
файл cat 1>&3 3>&1

Ничего не выводит. Почему?

Я читал мою команду

кошка содержимого в файл, потом читать стандартный вывод и дать его в файл с дескриптором 3 , а затем взять содержание из файла с дескриптором 3 и дать его содержимое на стандартный вывод

Я читаю мою команду не так ?

Как мне прочитать мою команду для того, чтобы понять его лучше и получить на выходе файл


После понимания вашего ответа Стефан, я пробовал следующие команды

файл cat 1>&3 3> ofile

что не пишут содержание ФД 3 (который получает его содержимое от ФД 1-я.электронный поток stdout) в ofile

но я попробовал следующую команду

файл cat 1>&3 && кот <3

которой напечатано содержание ФД 3 в stdout.

Почему не ФД 3 напишите ofile , когда ФД 3 Содержание 1 ФД ?


Стефан, команда Jesse_b упомянул в комментариях ниже.е

файл Cat 3> ofile 1>&3 

работает и пишет содержимое файла на ofile но команда

файл cat 1>&3 3> ofile

как я упоминал ранее, не пишите ofile.

Как изготовление 1>&3 в конце и в начале 3> ofile влияет на вывод этих двух команд ?

+579
osok 1 сент. 2015 г., 10:25:30

Мы используем am335x на основе пользовательских доска, у нас есть память eMMC в качестве вторичных устройства хранения. Теперь список разделов мы расстались , а расстались принты раздел размеры в МБ , а не Мб.

Есть ли способ, чтобы задать расстались для печати раздел размеры в Мб единицу, а не МБ устройство?

Вы можете обратиться к ниже выходного, который показывает расстались печатает размер в КБ или МБ а не в КБ или Мб.

# пробором --список
Модель: ГМК MMC04G (SD/ГМК)
Диск как /dev/mmcblk0: 3842MB
Размер сектора (логического/физического): 512 Б/512Б
Таблица разделов: GPT-диск
Флаги Диск:

Номер начало конец размер файловая система имя флаги
 1 131kB 262kB 131kB 
 2 262kB 393kB 131kB 
 3 393kB 524kB 131kB 
 4 524kB 1573kB 1049kB 
 5 1573kB 2621kB 1049kB 
 6 2621kB 3146kB 524kB 
 7 3146kB 3277kB 131kB 
 8 3277kB 8520kB 5243kB 
 9 8520kB 13.8 МБ 5243kB 
10 13.8 МБ, 19.0 МБ 5243kB 
11 19.0 МБ 19.3 МБ 262kB 
12 19.3 МБ 19.5 МБ 262kB 
13 19.5 19.8 мб мб 262kB 
14 21.0 МБ 32.5 МБ 11.5 МБ 
15 33.6 МБ 243MB 210 МБ в ext4 
16 243MB 453MB 210 МБ в ext4 
17 453MB 558MB 105 МБ в ext4 
18 558MB 621MB 62.9 МБ в ext4 
19 621MB 830MB 210 МБ в ext4 
20 830MB 867MB 36.7 МБ в ext4 
21 867MB 3827MB 2960MB в ext4 
+577
sonicbike 2 дек. 2019 г., 03:01:47

На основе вашего вывода xrandr поближе, существует две проблемы: во-первых, имя выход на VGA-2 (не VGA0) и во-вторых, похоже, что у тебя нет режим доступен для 1920х1200.

Сначала просто попробуйте установить разрешение:

расширения xrandr --выход VGA-2-размер 1920х1200

Если это не сработает (что я думаю не как 1920х1200 не режима) затем выполните следующие действия:

вариатор 1920 1200

Скопируйте и вставьте полный режим информации, например, для меня я получаю:

Режим "1920x1200_60.00" 193.25 1920 2056 2256 2592 1200 1203 1209 1245 -hsync +дней назад

То, что мы хотим копировать то, что является после режим, например, "1920x1200_60.00" 193.25 1920 2056 2256 2592 1200 1203 1209 1245 -hsync +дней назад

Теперь выполните следующие действия:

расширения xrandr --использованием newmode <WHAT_WE_COPIED_FROM_MODELINE>
расширения xrandr --addmode VGA-вариант 2 1920x1200_60.00

например, во второй команде после урку-2 мы ставим бит в цитаты из режим

Наконец:

расширения xrandr --выход VGA-2-режим 1920x1200_60.00

Один и тот же дескриптор для режима.

Это должно создать новый режим до 1920x1200, назначить режим для VGA-2, а затем установить на VGA-2 для использования этого режима.

+474
mingbai 21 июн. 2010 г., 11:24:08

В учебнике Баш я читаю, там написано, что если открыть дескриптор файла для чтения, т. е.

метод exec 3< echolist'а

Затем вы должны закрыть его,как это,

метод exec 3<&-

Однако, если вы открываете дескриптор файла для записи, он должен быть закрыт, как это:

в exec 3>&-

Но когда я смотрю в Интернете, я вижу людей, открывающих файлы, а затем закрывая их с этим:

в exec 3>&- 

Примечание: когда, по данным в учебнике, они должны быть, используя метод exec 3<&1.

Так что мой вопрос, может все файловые дескрипторы будут закрыты через метод exec Н>&- , где N-номер дескриптора файла? Независимо от того, если он был открыт для чтения, записи, или как?

+474
Taylor Morgan 11 янв. 2019 г., 15:30:49

Программы, которые ничего делать не будет выгружен. Так что вам не нужно идти в минималистичном на использование оперативной памяти.

Избегайте фоновых программ, которые не приостановлена в ожидании ввода пользователя. Например, не открывайте веб-браузер, который автоматически обновляет некоторые страницы, или почтовый клиент, который периодически проверяет входящие сообщения.

Одна из причин искать минималистичный менеджер окон, чтобы позволить виртуальной машине сделать все нажатые клавиши: оконный менеджер, что запасы сочетания клавиш, такие как АЛТ+таб может быть раздражающим, если ваш ВМ не хватай клавиатуру. И наоборот, если ВМ не хватай клавиатуру в удобном виде, это не касается.

Ubuntu поставляется с кучей минималистский оконные менеджеры, из которых выбор зависит от личных предпочтений. Я не собираюсь перечислять их все. Я лично использую рыба-пила, которая не минималистичный, но все равно мало по сравнению с современными настольными средами, и очень гибкие (их можно программировать на Лиспе диалект).

На вкладке "диспетчер отображения" (программа, где вы входите в систему в графическом режиме), вы можете выбрать между типами сессии. В Ubuntu нет “пользовательский” тип сеанса "из коробки", но вы можете связать ваш минимальный сеанс к небольшое окно Диспетчер на ваш выбор или определить пользовательский тип сеанса. Кроме того, вы можете войти в систему в текстовом режиме (нажмите сочетание клавиш Ctrl+АЛТ+Ф1 , чтобы переключиться в текстовую консоль, нажав CTRL+АЛТ+Ф7 , чтобы вернуться в графический экран для входа или начала сеанса есть) и выполните команду команду StartX для запуска сеанса, например

командой StartX -- :1

которая выполняет файл ~/.файла (обычно это shell-скрипт, где вы начинаете, что вы хотите в вашей сессии). Если вы хотите запустить только на виртуальной машине эмулятора и ничего другого, вы можете пройти свой полный путь к команде StartX плюс опции командной строки, например

команды StartX /usr/Бен/ВМ-запустить 'виртуальная машина' -геометрия 1920х1080+0+0

но учтите, что без оконного менеджера, вы не сможете сделать так много, как изменить размер окна.

+455
Matilda Martin Santos 17 июл. 2016 г., 16:43:53

Есть только два решения, что я могу думать. Первый-модифицировать код экран себе и перекомпилировать. Второй-что-то вроде ожидать оболочку для программы (непроверенных):

#!/usr/Бен/ожидать -Ф
отродясь экран -м Баш-с Фу
взаимодействовать {
 "\[экран завершение]" выход
}
+418
Atul Nerkar 17 дек. 2015 г., 13:49:42

Я использовал явный параметр командной строки:

yast2 -ГТК

чтобы избежать строка 440 дамп. Это в openSUSE 42.2 для бинарных yast2 из 2017-03-28.

+415
ArunMKumar 22 мая 2019 г., 07:33:15

Зачем использовать найти , когда вам не нужна рекурсия? Использование командной консоли (я предполагаю, что Баш здесь изменить, чтобы удовлетворить ваши потребности) для сопоставления регулярных выражений:

для dir В */;сделать
 если [[ "$Дир" =~ yourRegexHere ]];затем
 МВ -- "каталог$dir"/* "рабочий стол/Новая папка/"
интернет
сделано

Если возможности regex ваша оболочка слишком слаба для ваших требований, она не может быть лучше, чем Perl:

на Perl -E 'для(команда grep {/yourRegexHere/} Глоб "*/"){ 
 модель QX(МВ -- "$_"/* "рабочий стол/Новая папка") 
}'
+373
Mikael Karlsson 14 июн. 2018 г., 20:47:40

Благодаря ссылке, предоставленной don_crissti, я узнал, что я был неправ насчет команды.

правильные команды для трекера-АБ являются следующие

# сброс 
трекер-контроля -Р
#перезагрузка
трекер-контроль -с

Но что более интересно - трекер-статистика

[ХХХ@ууу ~]$ трекер-статистика 
Statistiken:
 НАО:тег = 1
 НКО:контакт = 3
 НФО:аудио = 11095
 НФО:документ = 79
 НФО:исполняемые = 123
 НФО:FileDataObject = 14778
 НФО:папка = 1115
 НФО:изображения = 2222
 НФО:медиа = 13317
 НФО:MediaList = 136
 НФО:PaginatedTextDocument = 4
 НФО:PlainTextDocument = 75
 НФО:TextDocument = 79
 НММ:MusicPiece = 11095
 НММ:фото = 2111
 НММ:плейлист = 57
 РФР:класс = 235
 РФР:ресурс = 16203
 трекер:Объем = 1

По этому, все мои файлы были отсканированы, поэтому я проверил musicplayer снова. Посмотрев на "титулы"-закладка я увидел, что 80% треков нет метаданных. Ну, они делают, но в ID3-Теги, очевидно, не признали и если я правильно помню, мои файлы помечаются с ID3 V2 в метаданных.

Я не мог найти ни одного сообщения о трекер не умеет читать этот формат, но он наверняка выглядит.

+336
user1903083 18 апр. 2018 г., 17:46:36

Запрос: 12 00 00 00 24 00 является SCSI статус запроса; наиболее часто генерируется смарт дознание, но и от множества других вещей (много случаев может вызывать прощупывание диска в начале загрузки, и ваш компьютер всего за ~118 секунд, когда те записи в журнале произошло).

Если устройство в вопрос (все по 4:0:0:0, вы не приложите никаких lsscsi выход) не поддерживает этот запрос, или не в определенном направлении, и вы получите в ЦКБ ошибки выше.

+231
Michael Hammond 1 авг. 2010 г., 23:32:15

Я пытаюсь удалить файл, так как я установил изысканный или вместо жратвы, я хочу удалить grub или просто удалить "grubx64.Эфи" с моей ЕСП, чтобы заставить его исчезнуть на экране загрузки изысканный.

Могу ли я смонтировать ЭСП так, но я не знаю, как удалить файл. Я плохо в Линуксе,

console LS

Может кто-то помочь мне ? Спасибо

+200
Hajir Golmohammadi 29 окт. 2011 г., 13:53:20

Это также может произойти из-за eth0 и eth1, как wlan0, wlan1 и т. д. являются стандартными именами ядра (в случае непостоянные схемы именования). В документацией udev он сказал:

Название

Имя для сетевого интерфейса. Ознакомиться с помощью systemd.Ссылка(5) для более высокого уровня механизма параметр имя интерфейса. Имя узла устройства не может быть изменен менеджером устройств udev, только дополнительные симлинки можно создавать.

Поэтому никогда не используйте ЕТН*, беспроводная локальная сеть* и т. д. имена для правил udev.

+138
OhGee 6 апр. 2015 г., 16:00:41

Да, вы можете. Правильно определив список в POSIX файл Spawn действия, безусловно, является способом пойти.

Пример:

код #include <errno значение.ч>
#включить <флагов.ч>
#включить <наплодил.ч>
#включить заголовочный файл <stdio.ч>
#включить <строка.ч> 
#определить CHECK_ERROR(Р, ПГ) делать { если (Р) { fprintf(stderr, "указанное на %S: %з\п",
 (МСГ), использовать strerror(Р)); возврат 1; } } пока (0) 
Экстерн типа char **среды; 
тап_п(АГДС, типа char **argv в)
{
 если (argc < 3) {
 fprintf(stderr, "указанное вызова: команда %с ВЫХОДНОЙ_ФАЙЛ [АРГ]...\Н" аргумент argv[0]);
 вернуться 2;
}
 константный тип char *out_filename = аргумент argv[1];
 голец **child_argv = агду+2;
 posix_spawn_file_actions_t как;
 инт Р = posix_spawn_file_actions_init(&а);
 CHECK_ERROR(Р, "действия инит");
 Р = posix_spawn_file_actions_addopen(&а, 1, out_filename,
 O_CREAT | O_TRUNC СОВМЕСТНО | O_WRONLY, 0644);
 CHECK_ERROR(Р "addopen");
 Р = posix_spawn_file_actions_adddup2 (и в качестве, 1, 2);
 CHECK_ERROR(Р "adddup2");
 pid_t child_pid;
 Р = posix_spawnp(&child_pid, child_argv[0], &, как, нулевой,
 child_argv, среда);
 CHECK_ERROR(Р "spawnp");
 Р = posix_spawn_file_actions_destroy(&а);
 CHECK_ERROR(Р, "действия уничтожить");
 возврат 0;
}

Компиляции и тестирования:

$ чч -стены -г-о spawnp spawnp.с
$ ./дата -я spawnp журнала 
$ кошка журнал
2018-11-03
$ ./а.из журнала дат 
spawnp: нет такого файла или каталога

Обратите внимание, что posix_spawn функции не устанавливают errno, вместо, в отличие от большинства других Unix функции, они возвращают код ошибки. Таким образом, мы не можем использовать perror() , но придется использовать что-то вроде использовать strerror().

Мы используем два респа действия файла: addopen и addup2. В addopen похож на обычный открыть() , но можно также указать дескриптор файла, который автоматически закрывается, если уже открыт (здесь 1, т. е. стандартный вывод). В addup2 имеет подобные эффекты к dup2(), т. е. конечный файл дескриптора (здесь 2, т. е. поток stderr) автоматически закрыта до 1 дублируется на 2. Эти действия выполняются только в ребенке, созданные posix_spawn, т. е. прямо перед его исполняет указанную команду.

Как вызов Fork(), posix_spawn() и posix_spawnp() немедленно вернуться к родителю. Таким образом, мы должны использовать waitid() или с помощью waitpid() , чтобы явно ждать child_pidс прекращением.

+125
Amit Khandelwal 24 мая 2015 г., 10:18:49

Мне интересно про потоковое малина камеры выходной по локальной сети, используя ИРЦ Cam веб-интерфейса люкс. У меня вопрос по поводу нагрузки на пропускную способность сети Интернет. Может кто посоветует, если этот подход будет занимать пропускной способности сети, даже когда ничего не подключено, или это произойдет только тогда, когда кто-то активно течь? Спасибо заранее.

+107
Prostak 22 июл. 2011 г., 03:46:32

Мы должны запустить несколько процессов в системе Linux. Эти процессы часто требуется несколько (~5го) памяти (общая память: 16Go ОЗУ + своп 2го).

  • Сначала, когда система была запущена из памяти, ООМ-киллер убил процессы, нам пришлось перезагружать систему каждый раз, когда это произошло.

  • Потом мы пытались использовать overcommit_memory (= 2) + overcommit_ratio (= 75) параметры, чтобы процессы не запущены, когда ситуация становится критической. Так, нет необходимости, чтобы перезагрузить сервер больше. Но теперь наш запускаем скрипт сообщили о десятках ошибок, когда предел достигнут : новые процессы сразу в ошибку, процессы не запущены.

  • Поэтому сейчас мы ищем решения для запуска "как многие" процессы, как мы хотим, и тогда они будет отложено/приостановлено или ничего, ждут своих братьев, чтобы остановить... существует ли она ?

+68
Nan 21 сент. 2015 г., 16:16:48

Он там для полноты.

Вы можете использовать его как сокращенную форму $ФРД. Вы экономите всего двух клавиш!

+18
Ashok kumar B 29 мая 2014 г., 22:26:34

Показать вопросы с тегом

$200 cialis coupon 10 mg tadalafil generic 5 mg cialis over the counter at walmart best price for tadalafil 20 mg buy cialis buy cialis generic tadalafil buy cialis online buy cialis online without script buy tadalafil buy tadalafil online canadian cialis online pharmacy canadian pharmacy cialis cheap cialis cheap cialis generic cialis cialis 20 mg best price cialis 20mg cialis 30 day sample cialis 30 day trial coupon cialis and alcohol cialis before and after cialis canada cialis canada pharmacy online cialis cost cialis coupon cialis coupons cialis coupons printable cialis dosage cialis dosage information cialis for daily use cialis for sale cialis free trial cialis free trial voucher for cialis cialis generic cialis generic release date cialis generic tadalafil cialis lowest price cialis online cialis online pharmacy cialis over the counter cialis over the counter at walmart cialis patent expiration date extended cialis picture testimonials cialis pills cialis price cialis prices cialis reviews cialis side effects cialis tadalafil cialis tadalafil 20 mg cialis vs viagra cialis vs viagra which is better cialis without a doctor's prescription cialis without doctor prescription cost of cialis cost of tadalafil generic at walgreens coupon for cialis by manufacturer does cialis lower blood pressure generic cialis generic cialis at walmart generic cialis canada generic cialis canada pharmacy generic cialis from india generic cialis tadalafil generic tadalafil generic tadalafil 20 mg is there a generic for cialis online cialis purchasing cialis on the internet side effects for cialis side effects for tadalafil side effects of cialis tadalafil tadalafil 20 mg tadalafil 20 mg canadian drug stores tadalafil 20mg tadalafil 20mg lowest price tadalafil 5 mg tadalafil 5mg tadalafil cost at walmart tadalafil dosage tadalafil generic tadalafil generic at walgreens tadalafil generic best prices tadalafil online tadalafil price tadalafil side effects tadalafil tablets tadalafil without a doctor's prescription viagra vs cialis viagra vs cialis vs levitra warnings for tadalafil $200 cialis coupon 10 mg tadalafil generic 5 mg cialis over the counter at walmart best price for tadalafil 20 mg buy cialis buy cialis generic tadalafil buy cialis online buy cialis online without script buy tadalafil buy tadalafil online canadian cialis online pharmacy canadian pharmacy cialis cheap cialis cheap cialis generic cialis cialis 20 mg best price cialis 20mg cialis 30 day sample cialis 30 day trial coupon cialis and alcohol cialis before and after cialis canada cialis canada pharmacy online cialis cost cialis coupon cialis coupons cialis coupons printable cialis dosage cialis dosage information cialis for daily use cialis for sale cialis free trial cialis free trial voucher for cialis cialis generic cialis generic release date cialis generic tadalafil cialis lowest price cialis online cialis online pharmacy cialis over the counter cialis over the counter at walmart cialis patent expiration date extended cialis picture testimonials cialis pills cialis price cialis prices cialis reviews cialis side effects cialis tadalafil cialis tadalafil 20 mg cialis vs viagra cialis vs viagra which is better cialis without a doctor's prescription cialis without doctor prescription cost of cialis cost of tadalafil generic at walgreens coupon for cialis by manufacturer does cialis lower blood pressure generic cialis generic cialis at walmart generic cialis canada generic cialis canada pharmacy generic cialis from india generic cialis tadalafil generic tadalafil generic tadalafil 20 mg is there a generic for cialis online cialis purchasing cialis on the internet side effects for cialis side effects for tadalafil side effects of cialis tadalafil tadalafil 20 mg tadalafil 20 mg canadian drug stores tadalafil 20mg tadalafil 20mg lowest price tadalafil 5 mg tadalafil 5mg tadalafil cost at walmart tadalafil dosage tadalafil generic tadalafil generic at walgreens tadalafil generic best prices tadalafil online tadalafil price tadalafil side effects tadalafil tablets tadalafil without a doctor's prescription viagra vs cialis viagra vs cialis vs levitra warnings for tadalafil blue chew viagra scam buy viagra buy viagra online buy viagra online canada pharmacy buy viagra online without script canada pharmacy viagra generic canadian pharcharmy online viagra canadian viagra canadian viagra without a doctor prescription cheap viagra cialis vs viagra cost of viagra female viagra female viagra pills free viagra free viagra samples generic viagra generic viagra 100mg generic viagra available generic viagra canada price generic viagra online pharmacy generic viagra sildenafil citrate generic viagra without a doctor prescription herbal viagra how does viagra work how long does viagra last how much does viagra cost how to take viagra for maximum effect i took viagra mom levitra vs viagra mom gives son viagra natural viagra natural viagra alternatives that work natural viagra substitute nizagara 100 mg vs viagra online viagra online viagra without subscription over the counter viagra real life viagra demonstration revatio vs viagra side effects of viagra sildenafil sildenafil 100mg sildenafil 20 mg sildenafil 20 mg tablet sildenafil 20 mg tablet vs viagra sildenafil citrate sildenafil citrate 100mg sildenafil citrate 20 mg sildenafil coupons sildenafil dosage sildenafil dosage recommendations sildenafil generic sildenafil side effects sophia viagra sophia viagra bikini sophia viagra hot stendra vs viagra stepmom gives son viagra viagra viagra 100mg viagra before after photo actual viagra boner viagra canada online pharmacy viagra coupon viagra coupons viagra coupons from pfizer viagra dosage viagra dosage recommendations viagra erection viagra erection after ejaculation viagra for men viagra for sale viagra for sale on amazon viagra for women viagra generic viagra generic availability viagra generic release date viagra in action viagra on line viagra online viagra online canada pharmacy viagra online pharmacy viagra patent expiration viagra pill viagra pills viagra porn viagra prank viagra prices viagra samples viagra sex viagra side effects viagra substitute viagra vs cialis viagra without a doctor prescription viagra without doctor prescription what is viagra when will generic viagra be available blue chew viagra scam buy viagra buy viagra online buy viagra online canada pharmacy buy viagra online without script canada pharmacy viagra generic canadian pharcharmy online viagra canadian viagra canadian viagra without a doctor prescription cheap viagra cialis vs viagra cost of viagra female viagra female viagra pills free viagra free viagra samples generic viagra generic viagra 100mg generic viagra available generic viagra canada price generic viagra online pharmacy generic viagra sildenafil citrate generic viagra without a doctor prescription herbal viagra how does viagra work how long does viagra last how much does viagra cost how to take viagra for maximum effect i took viagra mom levitra vs viagra mom gives son viagra natural viagra natural viagra alternatives that work natural viagra substitute nizagara 100 mg vs viagra online viagra online viagra without subscription over the counter viagra real life viagra demonstration revatio vs viagra side effects of viagra sildenafil sildenafil 100mg sildenafil 20 mg sildenafil 20 mg tablet sildenafil 20 mg tablet vs viagra sildenafil citrate sildenafil citrate 100mg sildenafil citrate 20 mg sildenafil coupons sildenafil dosage sildenafil dosage recommendations sildenafil generic sildenafil side effects sophia viagra sophia viagra bikini sophia viagra hot stendra vs viagra stepmom gives son viagra viagra viagra 100mg viagra before after photo actual viagra boner viagra canada online pharmacy viagra coupon viagra coupons viagra coupons from pfizer viagra dosage viagra dosage recommendations viagra erection viagra erection after ejaculation viagra for men viagra for sale viagra for sale on amazon viagra for women viagra generic viagra generic availability viagra generic release date viagra in action viagra on line viagra online viagra online canada pharmacy viagra online pharmacy viagra patent expiration viagra pill viagra pills viagra porn viagra prank viagra prices viagra samples viagra sex viagra side effects viagra substitute viagra vs cialis viagra without a doctor prescription viagra without doctor prescription what is viagra when will generic viagra be available $200 cialis coupon 10 mg tadalafil generic 5 mg cialis over the counter at walmart best price for tadalafil 20 mg buy cialis buy cialis generic tadalafil buy cialis online buy cialis online without script buy tadalafil buy tadalafil online canadian cialis online pharmacy canadian pharmacy cialis cheap cialis cheap cialis generic cialis cialis 20 mg best price cialis 20mg cialis 30 day sample cialis 30 day trial coupon cialis and alcohol cialis before and after cialis canada cialis canada pharmacy online cialis cost cialis coupon cialis coupons cialis coupons printable cialis dosage cialis dosage information cialis for daily use cialis for sale cialis free trial cialis free trial voucher for cialis cialis generic cialis generic release date cialis generic tadalafil cialis lowest price cialis online cialis online pharmacy cialis over the counter cialis over the counter at walmart cialis patent expiration date extended cialis picture testimonials cialis pills cialis price cialis prices cialis reviews cialis side effects cialis tadalafil cialis tadalafil 20 mg cialis vs viagra cialis vs viagra which is better cialis without a doctor's prescription cialis without doctor prescription cost of cialis cost of tadalafil generic at walgreens coupon for cialis by manufacturer does cialis lower blood pressure generic cialis generic cialis at walmart generic cialis canada generic cialis canada pharmacy generic cialis from india generic cialis tadalafil generic tadalafil generic tadalafil 20 mg is there a generic for cialis online cialis purchasing cialis on the internet side effects for cialis side effects for tadalafil side effects of cialis tadalafil tadalafil 20 mg tadalafil 20 mg canadian drug stores tadalafil 20mg tadalafil 20mg lowest price tadalafil 5 mg tadalafil 5mg tadalafil cost at walmart tadalafil dosage tadalafil generic tadalafil generic at walgreens tadalafil generic best prices tadalafil online tadalafil price tadalafil side effects tadalafil tablets tadalafil without a doctor's prescription viagra vs cialis viagra vs cialis vs levitra warnings for tadalafil