小编tar*_*leb的帖子

如何将 U+xxxxx 代码指定的表情符号转换为 utf-8?

表情符号似乎使用 U+xxxxx 格式指定,
其中每个 x 是一个十六进制数字。

例如,U+1F615是“困惑的脸”的官方 Unicode Consortium 代码

由于我经常感到困惑,我对这个符号有很强的亲和力。

U + 1F615表示是混淆我,因为我认为有可能为Unicode字符的唯一编码所需的8,16,24或32位,而5个十六进制数字需要5×4 = 20比特。

我发现这个符号在 bash 中似乎由一个完全不同的十六进制字符串表示:

$echo -n  | hexdump
0000000 f0 9f 98 95                                    
0000004

$echo -e "\xf0\x9f\x98\x95"


$PS1=$'\xf0\x9f\x98\x95  >'
  >
Run Code Online (Sandbox Code Playgroud)

我本来希望U+1F615转换为类似\x00 \x01 \xF6 \x15 的东西

我没有看到这两种编码之间的关系?

当我在官方 Unicode Consortium 列表中查找符号时,我希望能够直接使用该代码,而不必以这种繁琐的方式手动转换它。IE

  • 在某个网页上找到该符号
  • 将其复制到网络浏览器的剪贴板
  • 将其粘贴到 bash 中以通过十六进制转储回显以发现真正的代码。

我可以使用这个 20 位代码来确定 32 位代码是什么吗?

这两个数字之间是否存在关系?

shell character-encoding unicode

19
推荐指数
3
解决办法
7694
查看次数

127.0.0.0/8 的 IPv6 等效项是什么

我正在尝试在 Linux 上设置 IP6tables 防火墙,我基本上想开始复制我的 IPv4 配置。

我的规则之一只是接受到本地主机子网的所有流量:

iptables -A INPUT -s 127.0.0.0/8 -j ACCEPT
Run Code Online (Sandbox Code Playgroud)

尽管 IPv6 的等价物是什么,但我有点困惑。是不是就这么简单:

ip6tables -A INPUT -s ::/128 -m comment --comment localhost -j ACCEPT
Run Code Online (Sandbox Code Playgroud)

互联网上的许多来源解释了 127.0.0.1,但我专门寻找 127.0.0.0/8 等效项,但我还没有找到确认。

顺便说一句ip6tables -vnL,当我发出以下命令时,我希望计数器增加:

telnet -6 localhost 22
Run Code Online (Sandbox Code Playgroud)

但这不会发生。

linux iptables ipv6 ip6tables

8
推荐指数
1
解决办法
4378
查看次数

为什么某些 TCP 重置数据包会出现在我的 iptables 日志中?

我开始在我的 Debian Jessie 服务器上添加一些基本的 iptables 规则。我的目标是过滤和记录网络流量(出于安全和学习目的)。不考虑 ICMP 数据包,这些是我正在使用的规则:

# INPUT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -j REJECT --reject-with tcp-reset

# OUTPUT
-A OUTPUT -o lo -j ACCEPT
-A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT -p udp -m udp --dport 53 -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 25 -j ACCEPT
-A OUTPUT …
Run Code Online (Sandbox Code Playgroud)

iptables tcp

6
推荐指数
1
解决办法
5812
查看次数

标签 统计

iptables ×2

character-encoding ×1

ip6tables ×1

ipv6 ×1

linux ×1

shell ×1

tcp ×1

unicode ×1