Pude lograr esto con la siguiente grepcepción:
grep -Fwf <(grep -v $(grep -oFwf include.txt fileA | head -1) include.txt) fileA
Esto eliminará uno de los patrones coincidentes de include.txt
y garantizará que haya al menos otra coincidencia.
Согласно справочной страницеtnftpd(8)
... The server
uses the TCP protocol and listens at the port specified in the ``ftp''
service specification; see services(5).
и сканирование через ftpd.conf(5)
не показывает очевидных способов возиться с портом прослушивания (в отличие от порта данных, который отличается ), поэтому давайте посмотрим, сможем ли мы изменить файл services
, который наверное плохая идея.
$ sudo perl -i.oops -pe 's/^(ftp\s+21)/${1}21/' /etc/services
$ grep 2121 /etc/services
ftp 2121/udp # File Transfer [Control]
ftp 2121/tcp # File Transfer [Control]
scientia-ssdb 2121/udp # SCIENTIA-SSDB
scientia-ssdb 2121/tcp # SCIENTIA-SSDB
nupaper-ss 12121/tcp # NuPaper Session Service
nupaper-ss 12121/udp # NuPaper Session Service
$
И с этим ужасным, ужасным эффектом мы теперь начинаем ftpd
... (это в системе 10.11.6, в которой ftpd
установлен по умолчанию в/usr/libexec
)
$ /usr/libexec/ftpd -lnDr -P 50001
$
И он работает как не -root на не-21
порту:
$ pgrep -lf ftpd
35258 /usr/libexec/ftpd -lnDr -P 50001
$ lsof -P -p 35258 | grep 2121
ftpd 35258 jhqdoe 4u IPv4 0x817b7cd1effd8d7f 0t0 TCP *:2121 (LISTEN)
ftpd 35258 jhqdoe 5u IPv6 0x817b7cd1effa3107 0t0 TCP *:2121 (LISTEN)
$
Работает это или нет, я не знаю; вам действительно нужен FTP ?
Чтобы отменить это изменение,sudo mv /etc/services.oops /etc/services