shell script idiom

Bash 命令中一些常见的习惯。 > file redirects stdout to file 1> file redirects **stdout** to file 2> file redirects **stderr** to file &> file redirects stdout and stderr to file /dev/null is the null device it takes any input you want and throws it away. It can be used to Read more ...

2019-07-03 bash , shell , stdout , stderr , pipeline

MySQL 日期和时间函数

记住一些常用的时间操作函数能够提高 SQL 查询的效率。比如查询过去 30 天的记录,如果不清楚 DATE_SUB() 函数可能需要手动计算一下时间点再查询,但是如果知道 DATE_SUB() 函数就可以 SELECT something FROM tb_name WHERE DATE_SUB(CURDATE(), INTERVAL 30 DAY) <= daet_col; 这个 SQL 同样会查找出来当前时间点未来的记录。 获取时间 获取当前时间 mysql> SELECT NOW(); +------------------- Read more ...

2019-06-30 mysql , database , sql , date , time

Linux 下执行文件中的每一行

今天想要通过 adb 将盒子中的所有 apk 备份出来,很早之前写过的文章 就提到过如何手动的备份 apk 文件,不过这样很麻烦,需要每一条都手敲,所以想到了使用刚了解到的 xargs 命令,所以想通过几个命令将文件路径全部都拷贝出来,包名也拷贝出来。然后使用 xargs 来批量执行每一行命令。 通过这个拿到所有包名 adb shell pm list packages | cut -d: -f2 | tee pkg.txt 拿到所有文件路径 adb shell pm list packages | cut -d: -f2 | xargs -I Read more ...

2019-06-28 linux , bash , xargs , commands

Intellij IDEA 中删除所有未使用的类

修改设置 Press Ctrl+Shift+A Enter “unused declar” Double-click on “Unused declaration” Settings will pop up 设置 Click on Java/Declaration redundancy/Unused declaration on the right bottom select “On the fly editor settings” untick check fields, …, check parameters. Read more ...

2019-06-28 intellij

Gitlab 中使用命令行提交 merge request

gitlab-cli 是一个用 Javascript 所写的工具,可以用来在命令行中提交 gitlab 的 merge request 等等,作者说收到 hub 工具的启发。 Installation npm install git-lab-cli -g Usage 查看帮助 lab -h 通过环境变量全局配置 GITLAB_URL=https://gitlab.yourcompany.com GITLAB_TOKEN=abcdefghijskl-1230 TOKEN 可以在 https://gitlab.yourcompany.co Read more ...


每天学习一个命令:xargs 连接输出和输入

xargs 用来把一个命令的结果传递给另外一个命令执行。这是一个日常中经常会遇到的场景。 xargs 会从标准输入读取内容,然后将内容送给其他命令构建其他可执行命令。这意味着可以从一个命令行的输出结果读取内容并作为另一个命令的输入。 xargs 默认读取时按照空白字符分割的输入,输入可以带双引号,单引号,或者反斜杠转义,xargs 也可以读取新行,然后将输入作为参数执行对应的命令一次或者多次,默认是 /bin/echo。空白行输入会被忽略。 Unix 文件系统的文件可以包含空白和新行,这个默认的行为可能造成一些问题,包含空白的文件名可能被 xarg Read more ...

2019-06-19 linux , xargs , cli , command-line , bash

一些 Tmux 使用小技巧

[[Tmux]] 是一个很强大的终端复用工具,下面是日常积累中记录的一些使用经验。 多 Pane 同步输入 Multiple Pane Synchronization Tmux 一个非常著名的功能就是可以多个 Pane 同步输入,使用方式: prefix 输入 :setw synchronise-panes on 然后在多个 Pane 中就开启了同步 同理配置 :set synchronise-panes off 就可以关闭 我在 ~/.tmux.conf 中配置了: bind C-x setw synchronize-pane Read more ...

2019-06-19 tmux , linux , commands , terminal

D-Bus 简单学习

D-Bus 是 Desktop Bus 缩写,是一个 inter-process communication(IPC) 和 remote procedure call (RPC) 机制,用来允许在同一台机器上进行进程间通信,它是 Linux 桌面环境中最重要的产物之一。它被越来越多地被用于应用程序间通信,也被用于应用程序和操作系统内核之间的通信。很多现代的服务进程都使用 D-Bus 取代套接字作为进程间通信机制,对外提供服务。 进程间通信 大部分 Linux 系统用它将系统事件(比如插入 USB 设备)通知给进程 D-Bus 作为 fre Read more ...

2019-06-18 linux , dbus , gpg , desktop

Termux app 使用记录

Termux 是一个 Android 上的应用,但是这个应用是一个终端模拟器,可以完美的在 Android 上模拟一个 Linux 终端环境。甚至不需要 root 权限,正常安装即可使用。Termux 还提供了一套自己的包管理。 Termux is an Android terminal emulator and Linux environment app that works directly with no rooting or setup required. A minimal base system is installed automa Read more ...


全平台开源的密码管理软件 Bitwarden

今天逛博客偶然间见到了一款全平台开源的密码管理软件 – Bitwarden,回想 2013 年的时候曾经写过一篇密码管理的方案,一回首已经六年,而这六年间换了无数设备,换过无数密码,从最早手写,固定规则,到 KeePass,到 LastPass,还曾经买过一年的 LastPass 会员,如今稳定地用着 LastPass。也见证了 LastPass 从简陋的单纯的密码管理到 Chrome 上的自动填充,再到 Android 上的一键填充,最后 iOS 也开放了支持,所有的平台几乎 LastPass 通吃了, Auto Fill 的功能实在太贴心。 然后为 Read more ...


最近文章

  • Claude Code Skills 功能介绍以及使用经验 在我们进一步介绍 Skills 之前,先来回顾一下 Claude 已经给我提供的扩展:
  • 利用 AI 来完成实盘交易 基础知识
  • Claude 免费领一个月 Pro 早上看到 Claude Pro 如果使用公司(域名邮箱)注册可以免费一个月,直接在注册页面就能看到。截止 2025 年 10 月 30 日。
  • WailBrew:给 Homebrew 增加简单现代化的图形界面 在 macOS 开发者和技术爱好者的工具箱中,Homebrew 无疑占据着举足轻重的地位,作为 macOS 上最流行的包管理器,它极大地简化了软件的安装和管理流程。然而,对于不熟悉命令行的用户来说,记忆繁琐的命令行指令可能会成为一道门槛。正是在这样的背景下,WailBrew 应运而生——一款专为 Homebrew 打造的现代化图形界面管理工具,让包管理变得前所未有地简单直观。
  • balenaEtcher 开源跨平台镜像写入工具 balenaEtcher 是一个开源的跨平台镜像写入工具,可以将操作系统镜像文件安全写入到 SD 卡或者 USB 设备(比如 U 盘中),由 balena 公司开发,大大简化了镜像文件烧录的过程。无论是需要安装 Linux 发行版,或者是制作树莓派系统盘,或者安装 Proxmox VE,还是制作 Ventoy 多系统启动盘,balenaEtcher 都可以以最简单的方式完成。

赞助