Linux Shell 常用命令
du
1、查看指定文件夹的大小
-h 以K,M,G为单位,提高信息的可读性。
-s 仅显示总计 。
du -sh dir_path
2. 查询当前文件夹总大小
du -sh .
3. 查看当前文件夹所有子项的大小
du -sh *
df
df (disk filesystem)用于显示文件系统的磁盘空间使用情况.
查看 block 使用情况
df -h
查看 inode 使用情况
df -i
alias
alias gg='gg'
alias cls='clear'
alias ls='ls -alFh --ignore=. --ignore=.. --color=auto --group-directories-first'
alias acme.sh=~/.acme.sh/acme.sh
ln
ln -s source_file target_file
nginx
ln -s /wangzhy/cloud-conf/nginx/etc/nginx/conf /etc/nginx/conf
ln -s /wangzhy/.config/nginx_ip_conf /etc/nginx/ip-conf
把程序添加到 /usr/bin 下面
ln -s /source_path/source_name /usr/bin/target_name
find
find 语法
find [path] [expression]
path:是要查找的目录路径,可以是一个目录或文件名,也可以是多个路径,多个路径之间用空格分隔,如果未指定路径,则默认为当前目录。
expression:是可选参数,用于指定查找的条件,可以是文件名、文件类型、文件大小等等。
-name pattern:按文件名查找,支持使用通配符 * 和 ?。
pattern 用引号括起来,例如
# 查找所有的 pdf 文件
find / -name '*.pdf*'
-type type:按文件类型查找,可以是 f(普通文件)、d(目录)、l(符号链接)等。
查看大于 100M 的文件
find / -type f -size +100M
-size [+-]size[cwbkMG]:按文件大小查找,支持使用 + 或 - 表示大于或小于指定大小,单位可以是 c(字节)、w(字数)、b(块数)、k(KB)、M(MB)或 G(GB)。
-mtime days:按修改时间查找,支持使用 + 或 - 表示在指定天数前或后,days 是一个整数表示天数。
-user username:按文件所有者查找。
-group groupname:按文件所属组查找。
find 命令中用于时间的参数如下:
-amin n:查找在 n 分钟内被访问过的文件。
-atime n:查找在 n*24 小时内被访问过的文件。
-cmin n:查找在 n 分钟内状态发生变化的文件(例如权限)。
-ctime n:查找在 n*24 小 时内状态发生变化的文件(例如权限)。
-mmin n:查找在 n 分钟内被修改过的文件。
-mtime n:查找在 n*24 小时内被修改过的文件。
在这些参数中,n 可以是一个正数、负数或零。正数表示在指定的时间内修改或访问过的文件,负数表示在指定的时间之前修改或访问过的文件,零表示在当前时间点上修改或访问过的文件。
+n : n 天之前修改的文件 -n : n 天内修改的文件 n : n 天前修改的文件(第 n 天前的当天)
find 使用案例
- 在脚本中使用
find /opt/oracle/oradata/ORCLCDB/oracle_exp_dir -mtime +1 -name "WIKI_USER*" - rm -f exec {} \;
- 在 shell 使用
find /opt/oracle/oradata/ORCLCDB/oracle_exp_dir -mtime +1 -name "WIKI_USER*" - rm -f exec {} +
- 查找多种后缀的文件
find ~ \( -name "*.zip" -o -name "*.log" -o -name "*.txt" -o -name "*.jar" -o -name "*.json" -o -name "*.xls" -o -name "*.xlsx" -o -name "*.doc" -o -name "*.docx" \)
- 查找大于 10M 的 zip 文件
find /path/to/search -type f -name "*.zip" -size +10M -exec du -h {} + > ~/Desktop/a.txt