Linux系统删除find找到的文件或文件夹

当我运行得到结果文件后,需要删除当前目录下许多的中间文件夹:

find ./ -maxdepth 1 -type d -regex "./\w.*" -exec rm -rf {} +

各参数意义如下:
./ 是被搜索的文件夹
-maxdepth 1 表示仅搜索第一层目录
-type d 表示仅搜索文件夹类型数据,注意该参数要放-maxdepth参数后面,否则程序会有警告信息。
-regex "./\w.*" 使用正则表达式方式搜索数据,该正则表达式不会搜索当前目录下名称为 . 的目录,以防把当前目录直接删除
-exec rm -rf {} + 用于对搜索到的文件执行相应的操作,其中{}表示搜索到的文件路径。{}后面可以接空格加号或空格反斜线分号。

将当前目录下所有权限为600的普通文件变为644,

find ./ -type f -perm 600 -exec chmod 644 {} +

将当前目录下所有权限为700的文件夹变成755:

find ./ -type d -perm 700 -exec chmod 755 {} +

ssh登陆到服务器后自动切换到指定目录

我有多台服务器,每台服务器都将其存储挂载到了/disks/目录下并通过万兆网共享给所有局域网其它服务器。此时,我需要当切换到其它服务器时,一步到位自动切换到其存储目录下。此时,我按如下操作执行ssh命令即可。

ssh -t node2 "cd /disks/node2_16TB/chenlianfu; bash"

# ssh登陆node2服务器时,执行cd命令并使用bash命令登陆当前用户。若不加-t参数,ssh则时登陆到目标服务器后,执行相应命令后返回到当前主机。添加-t参数则表示强制分配虚拟终端,有利于远程服务器上一些依赖屏幕软件(例如less和bash命令)的运行。

# 想了解-t参数的意义,可以比较以下两个命令的差异。
ssh -t node2 "less /proc/cpuinfo"
ssh node2 "less /proc/cpuinfo"
# 只有添加了-t参数,才能真正让less命令使用屏幕,否则,不会为less命令分配虚拟终端而不能正常运行。

出行指南

1. 从广州火车站到华南植物园科研区

在广州火车站地铁站,搭乘地铁5号线(文冲方向)到区庄站;换乘地铁6号线(香雪方向)到地铁长湴站A出口;换乘775路公交车到华南植物园西门下车即到。