Tanto o tshark quanto o tcpdump usam a biblioteca pcap
, então os filtros de captura usam a sintaxe pcap-filter . O filtro que você deseja é, como diz @tristan, "not port 22"
. Você pode inserir isso como um argumento de string entre aspas na opção -f
, ou como um argumento sem aspas para o comando. Os seguintes comandos são equivalentes:
# tshark -f "not port 22"
# tshark -- not port 22
A razão pela qual tshark reclamou do seu comando acima é que seu shell (provavelmente Bash) expandiu "! 22" para o comando número 22 em seu histórico de comandos, que nesse caso era "ls". A documentação do Bash tem mais informações sobre a expansão do histórico.