SnapDrop——只用浏览器就能跨平台点对点传文件的神器
2021/11/20 计算机 次 15 条
【2021年11月25日更新】输入暗号之后会自动生成一个二维码,对方不需要手动输入网址和暗号,只要扫描这个二维码在浏览器打开,就能建立连接。另外修改了一下设备的随机昵称,把原来英文昵称改成了中文,更接地气。

【2021年11月25日更新】输入暗号之后会自动生成一个二维码,对方不需要手动输入网址和暗号,只要扫描这个二维码在浏览器打开,就能建立连接。另外修改了一下设备的随机昵称,把原来英文昵称改成了中文,更接地气。

|
元字符
|
说明
|
|---|---|
|
.
|
匹配除换行符以外的任意字符
|
|
\w
|
匹配字母或数字或下划线或汉字
|
|
\s
|
匹配任意的空白符
|
|
\d
|
匹配数字
|
|
\b
|
匹配单词的开始或结束
|
|
^
|
匹配字符串的开始
|
|
$
|
匹配字符串的结束
|
\babc或者^abc ^\d\d\d\d\d\d\d\d$ ^1\d\d\d\d\d\d\d\d\d\d$ |
元字符
|
解释
|
|---|---|
|
\W
|
匹配任意不是字母,数字,下划线,汉字的字符
|
|
\S
|
匹配任意不是空白符的字符
|
|
\D
|
匹配任意非数字的字符
|
|
\B
|
匹配不是单词开头或结束的位置
|
|
[^x]
|
匹配除了x以外的任意字符
|
|
[^aeiou]
|
匹配除了aeiou这几个字母以外的任意字符
|
|
语法
|
说明
|
|---|---|
|
*
|
重复零次或更多次
|
|
+
|
重复一次或更多次
|
|
?
|
重复零次或一次
|
|
{n}
|
重复n次
|
|
{n,}
|
重复n次或更多次
|
|
{n,m}
|
重复n到m次
|
^\d{8}$^1\d{10}$ ^\d{14,18}$ ^ab*$ ^(ab)*\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\d{1,3}(\.\d{1,3}){3}<title>.*</title><(title)>.*</\1>^(\(ab\))*^(130|131|132|155|156|185|186|145|176)\d{8}$^((13[0-2])|(15[56])|(18[5-6])|145|176)\d{8}$ |
语法
|
含义
|
|---|---|
|
(exp)
|
匹配 exp,并捕获文本到自动命名的组里
|
|
(?<name>exp)
|
匹配 exp,并捕获文本到名称为 name 的组里,也可以写成 (?'name'exp)
|
|
(?:exp)
|
匹配 exp,不捕获匹配的文本,也不给此分组分配组号
|
|
(?=exp)
|
匹配 exp 前面的位置
|
|
(?<=exp)
|
匹配 exp 后面的位置
|
|
(?!exp)
|
匹配后面跟的不是 exp 的位置
|
|
(?<!exp)
|
匹配前面不是 exp 的位置
|
|
(?#comment)
|
对正则表达式的处理没有任何影响,只是用于提供注释让人阅读
|
\d{3,6}
文本:61762828 176 2991 44 871
贪婪模式:\d{3,6}
匹配结果1:617628
匹配结果2:176
匹配结果3:2991
匹配结果4:871
文本:61762828 176 2991 87321
贪婪模式:(\d{1,2})(\d{3,4})
匹配结果1:617628
匹配结果2:2991
匹配结果3:87321
|
代码
|
说明
|
|---|---|
|
*?
|
重复任意次,但尽可能少重复
|
|
+?
|
重复1次或更多次,但尽可能少重复
|
|
??
|
重复0次或1次,但尽可能少重复
|
|
{n,m}?
|
重复n到m次,但尽可能少重复
|
|
{n,}?
|
重复n次以上,但尽可能少重复
|
文本:61762828 176 2991 87321
贪婪模式:(\d{1,2}?)(\d{3,4})
匹配结果1:61762
匹配结果2:2991
匹配结果3:87321
一、硬盘单独休眠
1.查看:
mdadm -D /dev/md9 mdadm -D /dev/md13 hdparm -C /dev/sdc hdparm -C /dev/sda
2.建立脚本文件disconnect_internal_raid.sh:
#!/bin/sh echo "Disconnecting md9" mdadm /dev/md9 --fail /dev/sdc1 mdadm /dev/md9 --fail /dev/sda1 echo "Disconnecting md13" mdadm /dev/md13 --fail /dev/sdc4 mdadm /dev/md13 --fail /dev/sda4
3.建立脚本文件rebuild_internal_raid.sh:
有时候在Mac系统下读写NTFS分区时,会发现一些文件不能打开。提示错误为:
项目“XXX”已被OS X使用,不能打开。
出现这种情况往往是因为文件被添加了附加属性。
ls -al 命令可以看到:
-rwxr-xr-x@
文件的读写权限中被加上了一个@符号,这就是 Mac OS X 文件系统的附加属性(extended attributes)。
查看详细的附加属性内容:
xattr -l filename
彻底删除附加属性的办法:
xattr -c filename
去除当前文件夹中所有 txt 的附加属性。再次 ls -al 可以发现没有了@符号。
某些博客和贴吧推荐的:
xattr -d com.apple.FinderInfo XXX.txt
或者其他带有com.apple.****的都可能删除不彻底。只有用-c 参数才能彻底删除。
清除目录下所有文件的属性
find . -name "*.*" -exec xattr -c {} \;
或者:
find . -type f -print0 | xargs -0 xattr -c
还有更简单的指令:
xattr -c -r path
或者
xattr -rc path
如果路径中有空格或特殊字符的长路径:
打开Terminal.app并开始输入xattr -rc,包含尾随空格,然后将文件或文件夹拖到Terminal.app窗口,它将自动添加正确转义的完整路径。
转自https://github.com/digitalbirdo/BT-LinkkeySync/issues/12
一、生成Mac系统下的蓝牙配置文件
首先在Mac系统下配对蓝牙鼠标,配对之前可以先删除系统的蓝牙配对文件:
sudo rm /private/var/root/Library/Preferences/com.apple.bluetoothd.plist sudo rm /Library/Preferences/com.apple.Bluetooth.plist
配对鼠标,然后导出配置文件供以后修改:
装修时弱电箱到客厅只预埋了一根网线,但这时要同时连路由器上网和观看IPTV怎么办?
通常的做法是单网线8芯分双线4芯解决方案(某宝有成品网线一分二)。原理是使用百兆网络时,网线只用1、2、3、6,其余是闲置的,一般网线都是8芯,所以解决方案就是用4芯来接一个水晶头,这样就可以把一根网线变两根。
但是现在家用宽带的带宽基本都超过100兆了,如果用这种办法就会浪费上网的带宽,有没有更好的解决方案呢?
我曾经试过电力猫,但是非常不稳定,很多号称百兆的电力猫,在实际的电力使用环境下,连10兆的稳定连接都不能保证,后来我花高价换了一对号称千兆的电力猫,刚换上的时候非常稳,看高清节目都很流畅。结果半年不到,就莫名其妙的发卡了,现在都基本没法正常观看节目了。
最完美的解决方案是利用VLAN,将Internet和IPTV绑定到光猫的同一个LAN口,然后再用一台VLAN交换机将Internet和IPTV数据分到两个接口上。
首先,登录光猫的管理后台,各地不同运营商不同的光猫登录地址账号密码都不一样,请自行百度。
目前大部分的家庭宽带都是路由器的WAN口直接连接光猫的LAN口,光猫设置为桥接模式,路由器进行PPPOE拨号上网。假如光猫的LAN口地址为192.168.0.1,路由器的LAN口IP地址为192.168.1.1,电脑通过DHCP获取到的IP地址为192.168.1.100。如果想访问路由器的管理页面,很简单,直接通过浏览器访问http://192.168.1.1就可以。但是由于电脑跟光猫不在同一个局域网,所以电脑上无法直接通过192.168.0.1这个地址来访问光猫。如果想要访问光猫的管理页面就只能重新找根网线直接将电脑跟光猫的LAN口连接,然后手动设置电脑的IP地址为192.168.0.x,这样才能访问,比较麻烦。有没有什么办法能直接从192.168.1.100访问192.168.0.1呢?如果你使用的的是OpenWrt的路由器,这里介绍两种办法。
通常情况下,在Windows系统下通过SSH登录家里的NAS系统或者是登录Openwrt路由器,我一般使用Putty。家里内网中NAS主机或者Openwrt路由器想要从外网SSH登录的话需要在路由器上做端口映射,但是把NAS跟路由器的的SSH端口暴露在公网上可能会有一些安全性的问题。后来我发现了一个叫Gateone的神器,这是一个能在浏览器上运行的SSH客户端。只要有一个支持HTML5的现代浏览器你就能SSH登录到linux服务器。而且如果你把Gateone部署在内网中,你就可以在外网的浏览器上先连接到gateone,然后直接输入内网的IP来登录内网中的linux主机。其实说实话,除了装B之外并没有多大的实际意义,想象一下你在高铁上或者咖啡厅里优雅的拿出ipad打开safari然后SSH登录家里NAS的情景。
正文开始
1.添加Docker Hub的镜像服务器。
Gateone的docker镜像文件有好几百MB,国内连接Docker官方服务器比较慢,所以最好是使用国内的镜像服务器。
打开Container Station,在属性的Registry里面添加镜像服务器,我使用的是阿里云的镜像服务。
趁着6.18大促,入手了一台威联通TS-453Bmini。之所以选这款机器主要是看中了它双网口的配置,想利用它来做一个软路由,另外还有HDMI接口,可以用做HTPC。
一开始设计的方案是一个网口做WAN,另一个网口做LAN。但是这个方案有一个致命的缺陷:一旦LAN口用于PC和NAS之间拷贝数据,这个LAN口的千兆带宽会被完全占用,这时候其他设备再通过这个LAN口访问外网的速度肯定会受影响。所以最后我定下来的方案是保留一个网口供NAS专用,另一个网口做一个单网口的软路由。另外,为了维护的方便,我将原来的硬路由保留下来作为备用,平时不通电,当NAS升级或者维护的时候只需要拔下软路由跟交换机之间的网线然后将备用的硬路由插上电源即可。整个网络的拓扑图如下: