Проверьте аргумент перед прогоном программы

установка curlftpfs

opkg update; opkg install curlftpfs

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

vi /etc/rc.d/S99tcpdump

содержание S99tcpdump

#!/bin/ash

mkdir -p /dev/shm/something
curlftpfs FTPUSERNAMEHERE:FTPPASSWORDHERE4@EXAMPLE.COM /dev/shm/something/
tcpdump -i wlan0 -s 0 dst 192.168.1.200 or src 192.168.1.200 -w "/dev/shm/something/tcpdump-`date +%F-%Hh-%Mm-%Ss`.pcap" &

сделайте это исполняемым файлом

chmod +x /etc/rc.d/S99tcpdump

маршрутизатор перезагрузки, наслаждаться.

p.s.: похож "-s 0", необходим, потому что могли быть сообщения как: "размер пакета, ограниченный при получении, и т.д." - при загрузке .pcap файлов в wireshark

p.s.2: удостоверьтесь, что время корректно, потому что в противном случае выходное имя файла могло быть неправильным..

4
01.03.2013, 00:18
2 ответа

Сама программа работает, любые имена файлов передаются ей. Ограничение на a .zip суффикс в завершении не связан с тем, что делает программа. Завершение выполняется оболочкой. При нажатии Tab оболочка анализирует командную строку, в некоторой степени ищет правила завершения для контекста. В зависимости от оболочки правила анализа и завершения контекста могут быть более или менее сложными. Например, когда командная строка содержит echo $P и Вы нажимаете Tab, большинство оболочек с завершением ищет начало имен переменной P. По умолчанию, полные имена файлов оболочек, потому что это - очень общий падеж.

Bash, tcsh и zsh имеют способы сделать завершение программируемым: они анализируют команду под курсором и ищут правила для той конкретной команды в таблице. С программируемым завершением, записью в таблице для unzip в программе должно быть сказано, что первым аргументом должно быть существующее .zip файл и последующие аргументы должны быть именами членов архива zip.

Правила завершения не содержатся в самой программе, но они могут быть поставлены вместе с программой в том же пакете. Например, пакет, который содержит команду /usr/bin/foo может содержать файл /etc/bash_completion/foo это описывает к удару, как завершить аргументы в пользу foo команда и подобный файл /usr/share/zsh/functions/Completion/_foo для zsh.

4
27.01.2020, 20:50

Завершение командной строки Bash настраиваемо с помощью сценариев удара. В хинду Linux можно легко управлять тем, какое завершение требуется позволить использовать eselect bashcomp команда. Когда включено, символьная ссылка на сценарий в масштабе всей системы создается в Вашем ~/.bash_completion.d/ каталог. Вы могли использовать это сценарии в качестве первого ресурса, чтобы узнать, как автозавершение сделано с ударом.

4
27.01.2020, 20:50

Теги

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