tar 是 Linux 下常用的处理打包或压缩的常用命令,常用来处理后缀名为:tar, tar.gz tar.bz2 的文件。

tar:存档格式,未经过压缩
tar.gz:在tar基础上进行 gzip 压缩,tar.gz 和 tgz 类似
tar.bz2:比 gzip 压缩比更高,但更耗时, tar.bz2,tbz 和 tb2 类似

阅读全文


经常忘记将一些文件放在什么,或者安装一个应用程序后不知道准确的安装路径。使用命令可以进行查询:

which

which python

which 命令可用来查询 app 安装位置,返回值为路径。

find

find / -name file -type f

斜线:/ 代表从系统根目录查找,也可以定义特定的目录开始搜索
-name:代表只找文件名匹配,不找文件内的字符串
-iname:代表文件名不区分大小写
-type:搜索的文件类型 f 代表只找文件不找文件夹匹配,l 代表软链接文件
-mtime:指定查找日期天数
-exec:查找后执行 command 命令,注意最后要有分号 ;

例如,查找指定目录三天前的文件,然后删除文件:

find /temp/* -mtime +2 -exec rm -rf {} \;

-mtime 使用加号 + 代表指定日期前查找,减号 - 代表指定日期内查找。查找天数为取整关系,例如 2.5 天前的文件会被包含在 -mtime -2 内而不在 -mtime +2 内。

-exec 指令后跟需要执行的命令。

查询已知文件名的文件的所有位置,find 命令直接从文件系统 filesystem 查找文件,速度可能会比较慢,但优点是找到的文件当前肯定在系统内。

locate

locate 用来根据文件名寻找文件,它和 find 命令不同点是,find 从当前文件系统直接查找匹配,而 locate 命令会有一个背景进程,记录当前所有文件名到一个数据库文件中,当新建或删除一个文件时会动态更新这个数据库。当使用 locate 命令查找文件时,会从这个数据库里查找,这样速度会相比 find 快很多。

语法:

locate [option] strFile

strFile:将匹配所有包含此字符串的文件

option:
-i:不区分大小写
-c:输出匹配到的文件的个数

对于一些刚刚建立的文件,可能数据库没有更新到,所以无法通过命令查找到,这时候可以手动更新数据库:

sudo updatedb

首先判断自己网络 IP 地址是固定 IP/动态 IP/内网 IP,通过站长工具可以查询,或者终端执行如下指令查看外网看本地 IP 地址:

curl https://info.niekun.net/ip

然后从本地通过 ipconfig(win)/ifconfig(linux) 来查看网络路径,如果本地 IP 和上面检测出的一致,那就是有外网 IP,如果不一样则很可能自己分配到的是一个运营商内网。如下是我本地 Windows 电脑的结果,确认是内网:
2020-03-05T02:58:24.png

对于有外网 IP 但是是动态的,每隔一段时间自动变化的情况,可以使用 DDNS 来处理。

对于大多数家庭网络用户,都没有固定的 IP 地址或者也没有动态的 IP 地址,在本地搭建网络服务无法直接在外网访问,使用 frp 可以实现这一需求。

使用场景:路由器远程访问 远程访问/控制电脑 网搭建网站公网访问

项目地址:https://github.com/fatedier/frp
使用手册:https://gofrp.org/docs/

Windows 脚本参考:https://sspai.com/post/52523

阅读全文



Linux内核(英语:Linux kernel),是一种开源的类Unix操作系统宏内核。

如果你在安装新硬件后遇到:网卡不能使用,亮度不能调节,触摸板不能识别,蓝牙不能使用等等,这些关系都和linux的内核有关系。Kernel 是 Linux 系统的核心,主要负责硬件的支持。Linux 内核提供了安全补丁,bugfix 和新特性。

内核信息

查看当前运行内核:

uname -r

4.4.0-124-generic

Linux 内核版本号由 3 组数字组成:第一个组数字。第二组数字。第三组数字

第一个组数字:目前发布的内核主版本。
第二个组数字:偶数表示稳定版本;奇数表示开发中版本。
第三个组数字:错误修补的次数。

阅读全文