IO 重定向

上一篇讲了 shell 脚本的基本语法,然后这篇补一补标准输入输出重定向命令,以及管道命令。 一般情况下,每个 Unix/Linux 命令运行时都会打开三个文件: 标准输入文件(stdin):stdin的文件描述符为 0,Unix程序默认从stdin读取数据。 标准输出文件(stdout):stdout 的文件描述符为 1,Unix程序默认向stdout输出数据。 标准错误文件(stderr):stderr的文件描述符为 2,Unix程序会向stderr流中写入错误信息。 管道命令 管道命令的操作符是”|”, 它将前一个命令的输出给 Read more ...

2017-03-02 Linux , Shell , Bash

理解 bashrc profile 优先级及区别

在类 Unix 系统中,我们通常会配置 Shell 的 ~/.bashrc 或者 /etc/profile 来设置用户的工作环境。一般系统可能会有 /etc/profile /etc/bashrc /etc/bash.bashrc ~/.bashrc ~/.profile 在理解这些文件之前,需要了解 Shell 不同的登录方式,login 登录和 interactive 模式。 关于 Shell 的历史和分类可以参考之前的文章 shell 不同启动方式 login shell “login shell” 代表用户登入,比如使用 “su - Read more ...

2017-03-02 linux , shell , bash , bashrc

Shell/Bash script 学习笔记

上一篇写 Bash 的文章 ,只是介绍了 terminal 下面的一些快捷键,并没有对 Bash 和 Shell 本身展开多少的介绍,因此正好趁此机会。 sh(或者叫做 Shell Command Language), 是由 POSIX 标准 定义的一门语言。 它有很多实现(ksh88,dash…)等等, bash 同样可以认为是 sh 的一个实现。1 因为 sh 是一个规范,而不是实现,所以在大部分的 POSIX 系统上 /bin/sh 是一个 symlink。比如在 Debian/Ubtuntu 中, sh 便指向 dash. bash 在创造 Read more ...

2017-03-01 linux , shell , bash , sh , zsh

在 Ubuntu/Mint 下快速创建桌面快捷方式

Mint 下有些应用下载之后,解压就能使用,但是这样每次启动该应用时就需要到这个目录中来启动,没有可快捷方式可以直接在桌面上,或者启动器中快速启动。 Mint/Ubuntu 中,gnome 桌面的快捷方式都存在 ~/.local/share/applications 目录下。 系统中还有另外一个目录 /usr/share/applications 也会存放桌面快捷方式。 使用 gnome-desktop-item-edit ~/.local/share/applications --create-new 即可创建新的快捷方式。如果该命令不存在记得安装 Read more ...


Linux Mint 下使用 electron wechat

在 Ubuntu 下明明非常好用的 sudo snap install electronic-wechat 到了 Mint 下竟然就不管用了,出现了如下错误 cannot perform readlinkat() on the mount namespace file descriptor of the init process: Permission denied 无奈只能寻求另外的方法,手动编译安装果然可以。看 electronic-wechat 的 GitHub 代码知道该项目使用 electron。 安装 nodejs ,然后安装 gi Read more ...

2017-02-28 wechat , linux , mint , npm , nodejs , node

使用 mitmproxy 抓包

在之前的文章 Android 抓包 中介绍过 Mac 下 [[Charles]] 进行客户端的抓包,那篇文章中最后介绍其他工具的时候提到了 [[mitmproxy]] 这样一款命令行工具,最近使用来看,也是非常强大的工具。这里就简单记录一下。 mitmproxy 是用 Python 和 C 开发的一款支持 HTTP(S) 的中间人代理软件(man-in-the-middle proxy),不同于 Fiddler2,burpsuite 等类似功能工具,mitmproxy 可在终端下运行并且可以用来拦截、修改、重放和保存 HTTP/HTTPS 请求。mit Read more ...

2017-02-27 mitmproxy , android , proxy , linux , http , debug , reverse

我的一加 3 手机设置

最近屏幕摔碎了一次,维修过程中无奈抹掉了所有数据,于是只能从头开始开搞。这里只是简单的记录一下,以免哪一天又有同样的悲剧发生,当然不可能再有下次了。 刷回原厂设置 对于 Nexus 机型来说,Google 都提供了原厂镜像,一加同样也是,可以从官网下载 ,不过亲身经历一加官网的好多链接都挂掉了,直接从 xda 找反而要方便许多。官网的链接使用迅雷下载还遭遇了掉包,所以对于刷机包,一定要验证 md5,一定一定。 刷 Oxygen OS (氧 OS) , 有很多方法,如果使用的 stock recovery ,可以使用 adb sideload ful Read more ...

2017-02-26 oneplus , android , xposed , magisk , root

终端使用 sock5 代理

为了解决 Linux Mint/Ubuntu 下安装 Dropbox 的问题,而认识了 proxychains。proxychains 是 Linux 下的代理工具,他允许其他程序通过其代理上网,支持 HTTP, SOCKS4 和 SOCKS5 类型的代理服务器,并可配置多个代理方式。 一直使用的 Dropbox 因为其被屏蔽,所以安装及使用必须通过代理,而 Shadowsocks 作为天然的 socks5 代理成为了最佳选择,在安装 Dropbox(Linux) 之后,设置中可以设置 Socks5 代理。于是剩下的问题便是,如何安装 Dropbox Read more ...

2017-02-25 Socks5 , Linux , Proxy , Ternimal

fastboot and adb 工具

早之前曾经写过过一篇文章 总结 adb 的常用命令,这次刷机也复习了一些命令,这里再补充一下刷机中必不可少的 fastboot 命令。 就像之前 adb 中说过的那样, adb 用来向开机的 Android 设备发送指令,而 fastboot 则是向开机的 Android bootloader 来发送指令,因此在刷机过程中,如果手机重启进入 bootloader 基本之后使用的 命令都离不开 fastboot。比如在安装第三方 recovery 时,要用到 fastboot flash recovery recovery.img 这样的指令。虽然不能依 Read more ...

2017-02-25 Android , Fastboot , adb

Android 反编译

本文介绍 Android 反编译工具,只介绍工具名字及工具简单使用,详细开来再具体讲吧。本文主要包含工具的作用,工作的简单用法,以及反编译的基本步骤。 概述 反编译 Android APK 主要需要依靠如下几个工具: apktool:A tool for reverse engineering Android apk files 查看 APK 包中的 AndroidManifest.xml 等 XML 资源文件 apk 本质上是一种压缩包,可以通过解压的方式获得资源文件,但是如果直接解压 manifest 和 XML 都是 Read more ...

2017-02-22 Android , Java , Apktook , Google

最近文章

  • Langfuse 使得 LLM 应用全链路可观测 不知道大家在运用 LLM 的过程中有没有遇到过这样的问题,我需要不断的调试 Prompt,让 Prompt 给出符合自己满意的结果,并且在应用中使用 Prompt 的时候我需要进行成本的控制,并且持续的迭代优化,而目前大语言模型后台虽然能提供一个简单的支出统计,但用户交互过程中的信息都是捕捉不到的,比如用户的每次请求输出栓输出是否符合预期,不同版本之间的 Prompt 对结果的影响评估,以及用户请求的延迟等等。带着这些需求,我搜寻了一些方案,然后就发现了 Langfuse。
  • VibeTunnel 将终端带到浏览器 开启移动化 Vibe Coding 这两天在调研如何在移动设备上也能随时随地给 Claude Code 布置任务,自己也尝试了不少的方案,从 Tailscale,到 Remote-Code.com 到 VS Code 插件(Claude Autopilot)添加任务到队列。但是每个方案或多或少有一些缺点,比如 Remote-Code 虽然使用比较便捷,但是不支持中文。Claude Autopilot 体验也非常不错,但是我自己尝试的过程中发现长时间运行 VS Code 崩溃了两次,再到 Tailscale + 手机终端的方案,依赖于一个非常好用的 iOS 终端,虽然选择很多,但还是没有找到一款顺手的。
  • Claude Autopilot:自动化 Claude Code 任务 这两天写了很多关于 Claude Code 的相关文章,我自己也高强度的使用了接近一个月的 Cloud Code,但甚至在一个礼拜的时间内,Vibe Coding 了一个网站, 但是我在使用过程当中发现了一些问题,因为我是购买的 20 美元最低等级的套餐,所以经常使用达到 5 小时的限制,达到一个时间点之后才能继续使用。但我就想,有没有一个工具可以让我在达到时间点的时候立即开启我的任务,并且我的任务可以通过智能的队列让 Cloud Code 挨个去处理。
  • Dia 浏览器初体验 很久以前写过一篇 Arc 浏览器初印象, 一晃已经过去了 3 年,Arc 提出来了很多浏览器的创新功能,比如非常抢眼的无地址栏设计,侧边栏 Spaces 独立空间,智能标签页管理,分栏分屏,快捷命令栏,内置应用的迷你预览窗口,内置的白板和笔记等等。在过去的很长一段时间当中, Arc 都是我的备用浏览器,之所以没有成为主力是因为我的很多工作流还依赖于 Chrome 以及 Chrome 下庞大的插件生态。但是 Arc 浏览器的创始人在前段时间宣布了停止更新 ARK,并且推出了一款新的浏览器,All in AI,这款新的浏览器叫做 Dia。
  • Claudia 可视化管理 Claude Code Claudia 是一款专为 Anthropic  的 Claude Code 设计的开源图形用户界面(GUI)桌面应用,可以创建自定义代理,交互式管理,以及在后台运行。它将命令行形式的 Claude Code 转换为直观的可视化操作界面,显著提升了  AI 辅助编程的用户体验。

赞助