Все параметры конфигурации можно контролировать через переменные среды, начинающиеся с QRCP_
, например:
$QRCP_INTERFACE
$QRCP_PORT
$QRCP_KEEPALIVE
Команда config
запускает мастер настройки, который позволяет настроить такие параметры, как интерфейс, порт, полное доменное имя и поддержку активности.
qrcp config
Примечание: если некоторые сетевые интерфейсы не отображаются, используйте флаг --list-all-interfaces
, чтобы отключить фильтр интерфейсов.
qrcp --list-all-interfaces config
Файл конфигурации по умолчанию хранится в $XDG_CONFIG_HOME/qrcp/config.yml, однако вы можете указать местоположение файла конфигурации, передав флаг --config
:
qrcp --config /tmp/qrcp.yml MyDocument.pdf
По умолчанию qrcp
прослушивает случайный порт. Установите переменную среды QRCP_PORT
или передайте флаг --port
(или -p
), чтобы выбрать конкретный порт:
export QRCP_PORT=8080
qrcp MyDocument
Или:
qrcp --port 8080 MyDocument.pdf
qrcp
автоматически найдёт подходящий сетевой интерфейс для передачи данных. Если будет найдено более одного подходящего интерфейса, он попросит вас выбрать один из них.
Если вы хотите использовать определённый интерфейс, передайте флаг --interface
(или -i
):
# Веб-сервер будет виден всем компьютерам в сети интерфейса tun0
qrcp -i tun0 MyDocument.dpf
Вы также можете использовать специальное имя интерфейса any
, которое привязывает веб-сервер к 0.0.0.0
, делая веб-сервер видимым для всех в любой сети, даже из внешней сети.
Это полезно, когда вы хотите передать файлы со своего Amazon EC2, Digital Ocean Droplet, Google Cloud Platform Compute Instance или любого другого VPS.
qrcp -i any MyDocument.pdf
Вместо выбора интерфейса вы можете напрямую указать адрес, к которому qrcp
должен привязать веб-сервер.
qrcp --bind 10.20.30.40 MyDocument.pdf
qrcp
использует два шаблона для URL:
http://{ip address}:{port}/send/{random path}
http://{ip address}:{port}/receive/{random path}
Доступно несколько опций, которые переопределяют эти шаблоны.
Передайте флаг --path
, чтобы использовать конкретный путь для URL, например:
# Полученный URL будет
# http://{ip адрес}:{порт}/отправить/x
qrcp --path=x MyDocument.pdf
Передайте флаг --fqdn
(или -d
), чтобы использовать полное доменное имя вместо IP. Это полезно в сочетании с -i any
, если вы используете его удалённо:
# Полученный URL будет
# http://example.com:8080/send/xYz9
qrcp --fqdn example.com -i any -p 8080 MyRemoteDocument.pdf
qrcp поддерживает защищённые передачи файлов с помощью HTTPS. Чтобы включить защищённую передачу, вам нужен сертификат TLS и связанный ключ.
Вы можете выбрать путь к сертификату TLS и ключам в мастере настройки qrcp
, или, если хотите, вы можете передать --tls-cert
и --tls-key
:
qrcp --tls-cert /path/to/cert.pem --tls-key /path/to/cert.key MyDocument
Также доступен флаг --secure
, который можно использовать для переопределения значения по умолчанию.
Если вам нужно распечатать QR-код вне терминала, вы можете передать флаг --browser
. С этим флагом qrcp
всё равно распечатает QR-код на терминале, но также откроет новое окно вашего браузера по умолчанию, чтобы показать QR-код.
qrcp --browser MyDocument.pdf
Может быть полезно поддерживать работу сервера после передачи файла, например, когда вы хотите перенести один и тот же файл на несколько устройств. Для этого вы можете использовать флаг --keep-alive
:
# Сервер не будет автоматически завершать работу
# после первой передачи
qrcp --keep-alive MyDocument.pdf
В qrcp
есть встроенная команда completion
, которая генерирует сценарии завершения работы оболочки.
$ source <(qrcp completion bash)
Чтобы загрузить дополнения для каждого сеанса, выполните один раз:
Linux:
$ qrcp completion bash > **Перевод текста на русский язык:**
/etc/bash_completion.d/qrcp
Примечание: если вы не хотите устанавливать сценарии завершения системы, обратитесь к часто задаваемым вопросам по Bash Completion (Bash Completion FAQ) (https://github.com/scop/bash-completion/blob/master/README.md).
MacOS:
$ qrcp completion bash > /usr/local/etc/bash_completion.d/qrcp
Zsh:
Если автозаполнение оболочки ещё не включено в вашей среде, вам необходимо его включить. Вы можете выполнить следующее один раз:
$ echo "autoload -U compinit; compinit" >> ~/.zshrc
Чтобы загрузить дополнения для каждого сеанса, выполните один раз:
$ qrcp completion zsh > "${fpath[1]}/_qrcp"
Вам нужно будет запустить новую оболочку, чтобы изменения вступили в силу.
Fish:
$ qrcp completion fish | source
Чтобы загружать дополнения для каждого сеанса, выполните один раз:
$ qrcp completion fish > ~/.config/fish/completions/qrcp.fish
qrcp, изначально называвшийся qr-filetransfer, начался с идеи Клаудио д'Анжелиса (claudiodangelis@gmail.com) (@claudiodangelis в Telegram), текущего сопровождающего, и разработан сообществом (https://github.com/claudiodangelis/qrcp/graphs/contributors).
Присоединяйтесь! (https://github.com/claudiodangelis/qrcp/fork)
Логотип предоставлен @arasatasaygin в рамках инициативы openlogos, коллекции бесплатных логотипов для проектов с открытым исходным кодом. Ознакомьтесь с правилами, чтобы получить его: правила openlogos (https://github.com/arasatasaygin/openlogos#rules).
Релизы обрабатываются с помощью goreleaser (https://goreleaser.com).
MIT. См. LICENSE.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )