duangsuse::Echo
713 subscribers
4.24K photos
127 videos
583 files
6.46K links
import this:
美而不丑、明而不暗、短而不凡、长而不乱,扁平不宽,读而后码,行之天下,勿托地上天国。
异常勿吞,难过勿过,叹一真理。效率是很重要,盲目最是低效。
简明是可靠的先验,不是可靠的祭品。
知其变,守其恒,为天下式;穷其变,知不穷,得地上势。知变守恒却穷变知新,我认真理,我不认真。

技术相干订阅~
另外有 throws 闲杂频道 @dsuset
转载频道 @dsusep
极小可能会有批评zf的消息 如有不适可退出
suse小站(面向运气编程): https://WOJS.org/#/
Download Telegram
duangsuse::Echo
具体步骤: #sysadmin #Windows #Android 第一次: 控制面板-系统-系统属性 (SystemPropertiesAdvanced.exe) 改环境变量 PATH 前置 C:\msys2\usr\bin\ 每次开机: 或者用 set PATH=%PATH%;(上文本) 在 ipconfig ,找当前 以太网适配器 里的 默认网关 ,框选一次复制。 set RNDIS_HOST=(右键粘贴) 每次: 在 Android Termux (接收方)上 nc -l -p 12345…
嗯…… 今天终于知道 ncat host port 不止可以 sendto() ,也能 recvfrom() 了

而且,这个送信必须是由手机开 nc -l ,如果是从手机送到电脑,那也是在电脑上 recvfrom() ,不能反向开服 bind() 监听,只能是在网关(手机)上。

好像并不能连接到电脑端 ip addr iface 给的那个 inet 地址,但是网关(即开USB绑定共享的,手机电脑都易拿到地址)就可以联通,非常生草

当然如果只是这样就太没意思了,我写了个基于 #Python + socket/sl4a 的剪贴板共享脚本: #code #project

from socket import socket
from androidhelper import Android
sl4a = Android()

def serveTcp(saddr):
sd = socket()
sd.bind(saddr); sd.listen(1)
while True:
try: print("."); acceptReq(sd.accept()[0])
except IndexError: pass

def acceptReq(conn):
seqPrefixBytes = iter(lambda: conn.recv(1), ':'.encode())
act = chr(conn.recv(1)[0])
if act == '-': conn.send(sl4a.getClipboard().result.encode())
elif act == '+':
num = int(b"".join(seqPrefixBytes))
sl4a.setClipboard(conn.recv(num).decode())

serveTcp(("", 12345))
clipboardd.py
877 B
#Python #code 可以在这里下载 QPython 来执行(需要sl4a脚本服务器):https://github.com/qpython-android/qpython/releases/tag/Ox-v3.0.0
duangsuse::Echo
嗯…… 今天终于知道 ncat host port 不止可以 sendto() ,也能 recvfrom() 了 而且,这个送信必须是由手机开 nc -l ,如果是从手机送到电脑,那也是在电脑上 recvfrom() ,不能反向开服 bind() 监听,只能是在网关(手机)上。 好像并不能连接到电脑端 ip addr iface 给的那个 inet 地址,但是网关(即开USB绑定共享的,手机电脑都易拿到地址)就可以联通,非常生草 当然如果只是这样就太没意思了,我写了个基于 #Python + socket/sl4a…
这个玩意当时拿 C 也写了,想做成 #Android 应用的(谅我当时也不够了解对应安卓 API 反正用时查就行)

但是用 C 得手动管理 buffer ,这么简单的缓冲区控制,当时我实现了一半有 bug 好像就不行了,首先是不熟悉 TCP/UDP 的套接字(socket)通信,所以区间有效性、复用生存期什么的就没做好

当时是设计了应用域的 I/O 俩动态 realloc() buffer,写完我不知道类扫描器算法咋写了(显然不能缓冲区溢出也不能丟溢出的数据啊,就加了 MSG_PEEK flag),纯属底层细节太多导致的智商骤降(当时还以为 buffer 一次不能读完得拼接 recvfrom... 类似用 buffer 写的 OutputStream 就很麻烦,总而言之是 ensureSize 写错了没意识到大小是静态的),现在我就了解 SOCK_STREAM 的写法了。 (man socket.h)
duangsuse::Echo
clipboardd.py
#sysadmin #linux 这个
usbIP=ip route show 0.0.0.0/0 |awk '{print $3}'
usbTCP=12345
alias usbNc="ncat -i 1 ${usbIP} ${usbTCP} 2>/dev/null"
if [ "$1" = get ]; then
printf -|usbNc
echo
elif [ "$1" != '' ]; then
echo -n +echo "$1"|wc -c:"$1" |usbNc
fi

客户端脚本都写了🌚(附注:这里发不出反引号,等宽字部分就是被反引住 `` 的部分……
后来发现 nc -i 1s 及 2>/dev/null 的重定向可以一起去掉,明明不需要延时的(我脑抽了以为 stdin 重定向是等于启动新 nc 然后键入这些数据,不会EOF)
clip.sh
230 B
#tool #code #sysadmin #net 可惜不支持发文件🤔 当然这个也简单,本质上和发剪贴板没区别,只是剪贴板必须是字符串,文件的话不知如何保存好(可以开 intent)
Forwarded from wjm
不好意思有事我来打扰了。。。
https://t.me/dsuse/15301
请问一下这个对话发生在的群组是什么方便分享么(
Forwarded from dnaugsuz
@Pythonzh
Merlin Hong 应该是那个有名的红姐,擅长程序设计语言理论和 F# Elixir 函数式编程什么的
Forwarded from dnaugsuz
我当然有转发记录的
Forwarded from dnaugsuz
奇怪,我好像被封了
Forwarded from dnaugsuz
莫名其妙,犯啥事了。
算了,他们日常滥权
Forwarded from dnaugsuz
算了呗,凭他们对 Python 元编程动态性的那一点理解,俺继续做俺的项目,不是第一次了

就是很好奇不是立刻封的,那是为什么封的呢……
Forwarded from dnaugsuz
一群不干好事只晓得语言鄙视链的人,以为自己多聪明,聪明反被聪明误

以为自己能弄出那些别人早已组织好公开的 pattern 就多了不起,其实不过是一群 copycat ,真正搞懂了什么呢
Forwarded from wjm
鄙视链总感觉是在浪费时间。。我个人认为语言没那么重要,能完成想要的工作就行了
Forwarded from dnaugsuz
当然啊,他们的管理员特别不好相处,肯定是有些激进的管理员把我封了,之前就有过争议,懒得再说了
Forwarded from dnaugsuz
那我觉得应该去捕蛇裙🤔
因为我还算日常写py的
Forwarded from wjm
说真的感觉这个更友善。。