0
点赞
收藏
分享

微信扫一扫

基本指令二

爱奔跑的读书者 2022-03-13 阅读 36

时间日期指令

date 

显示当前时间

效果:2022年 03月 12日 星期六 09:55:21 CST

date +%y--%m--%d--%H:%M:%S

效果:显示当前 年 月 日 时 分 秒

说明只需要一个 + 号就行,中间的 – 和 : 仅仅是作为分隔符,可以去掉。

可以任意组合就像只显示 年月日

date +%y-%m-%d

注意 :时分秒的英文字符一定要大写,不然出错。

设置日期(特权模式下)

date -s "字符串时间"
比如 date -s  "2022-2-2  20:20:20"

查看当前日历

cal

指定年份查看

cal 2022

搜索查找指令

find指令

find命令的格式

find   path  -option  【 -print 】  【 -exec   -ok   |xargs  |grep  】 【  command  {} \;  】

find命令参数

1)path:要查找的目录路径。 


2)print:表示将结果输出到标准输出。会换行
print0 则不换行 

3)exec:对匹配的文件执行该参数所给出的shell命令。 
      形式为command {} \;,注意{}与\;之间有空格 

4)ok:与exec作用相同,
      区别在于,在执行命令之前,都会给出提示,让用户确认是否执行 

5)|xargs  与exec作用相同 ,起承接作用

区别在于 |xargs 主要用于承接删除操作 ,而 -exec 都可用 如复制、移动、重命名等

6)options :表示查找方式

options的参数

-name   filename               #查找名为filename的文件
-perm                                #按执行权限来查找
-user    username             #按文件属主来查找
-group groupname            #按组来查找
-mtime   -n +n                   #按文件更改时间来查找文件,-n指n天以内,+n指n天以前
-atime    -n +n                   #按文件访问时间来查找文件,-n指n天以内,+n指n天以前
-ctime    -n +n                  #按文件创建时间来查找文件,-n指n天以内,+n指n天以前
-nogroup                          #查无有效属组的文件,即文件的属组在/etc/groups中不存在
-nouser                            #查无有效属主的文件,即文件的属主在/etc/passwd中不存
-type    b/d/c/p/l/f             #查是块设备、目录、字符设备、管道、符号链接、普通文件
-size      n[c]                    #查长度为n块[或n字节]的文件
-mount                            #查文件时不跨越文件系统mount点
-follow                            #如果遇到符号链接文件,就跟踪链接所指的文件
-prune                            #忽略某个目录

按文件名查找

find 路径 -name 文件名  

说明:按名字查找支持模糊搜索

在当前目录及子目录中,查找大写字母开头的txt文件 
       $ find . -name '[A-Z]*.txt' -print   

      在/etc及其子目录中,查找host开头的文件 
      $ find /etc -name 'host*' -print   

      在$HOME目录及其子目录中,查找所有文件   
      $ find ~ -name '*' -print 

      在当前目录及子目录中,查找不是out开头的txt文件   
      $ find . -name "out*" -prune -o -name "*.txt" -print
      忽略字符大小写
      find  -iname

路径

  ~ 表示$HOME目录
  . 表示当前目录或者./
  / 表示根目录 
  /* 表示该目录下的所有文件
  ./* 表示当前目录下的所有子目录(文件)
  ‘pwd’ 表示当前目录《并以绝对路径输出》外面需要套一个双引号
   $pwd 表示当前目录 外面不需要套双引号
   
  

按拥有者查找

find 路径 -user 拥有者名  

按大小查找

find 路径 -size 文件大小

文件要等于 指定的文件大小

find 路径 -size +文件大小

文件要大于 指定的文件大小

find 路径 -size -文件大小

文件要小于 指定的文件大小

   查找超过1M的文件 
      $ find / -size +1M -type f -print   

      查找等于6字节的文件 
      $ find . -size 6c -print   

      查找小于32k的文件 
      $ find . -size -32k -print 

按类型查找  (b/d/c/p/l/f )

  在当前目录及子目录下,查找符号链接文件   
      $ find . -type l -print 
普通文件类型
Linux中最多的一种文件类型, 包括 纯文本文件(ASCII);二进制文件(binary);数据格式的文件(data);各种压缩文件.第一个属性为 [-]
目录文件
就是目录, 能用 # cd 命令进入的。第一个属性为 [d],例如 [drwxrwxrwx]
块设备文件
块设备文件 : 就是存储数据以供系统存取的接口设备,简单而言就是硬盘。例如一号硬盘的代码是 /dev/hda1等文件。第一个属性为 [b]
字符设备
字符设备文件:即串行端口的接口设备,例如键盘、鼠标等等。第一个属性为 [c]
套接字文件
这类文件通常用在网络数据连接。可以启动一个程序来监听客户端的要求,客户端就可以通过套接字来进行数据通信。第一个属性为 [s],最常在 /var/run目录中看到这种文件类型
管道文件
FIFO也是一种特殊的文件类型,它主要的目的是,解决多个程序同时存取一个文件所造成的错误。FIFO是first-in-first-out(先进先出)的缩写。第一个属性为 [p]
链接文件
类似Windows下面的快捷方式。第一个属性为 [l],例如 [lrwxrwxrwx]

按时间查找

    查找2天内被更改过的文件 
       $ find . -mtime -2 -type f -print   

      查找2天前被更改过的文件 
      $ find . -mtime +2 -type f -print   

      查找一天内被访问的文件 
      $ find . -atime -1 -type f -print   

      查找一天前被访问的文件 
      $ find . -atime +1 -type f -print   

      查找一天内状态被改变的文件 
      $ find . -ctime -1 -type f -print   

      查找一天前状态被改变的文件 
      $ find . -ctime +1 -type f -print   

      查找10分钟以前状态被改变的文件 
      $ find . -cmin +10 -type f -print 

注意

find 组合操作符 默认是与的关系

find ./ -name a -a -type f -ls

-a 是and的缩写 也就是与的关系

find ./ -name a -o -type f -ls

-o 是 or 的缩写也就是或的关系

但注意此时上面这种写法是错误的

应将 -ls 换成 -print 或者:

find ./ \(-name a -o -type f \) -ls

说明

\(   和 \)  都是转义符的写法 
find ./ -name a -not -type f -ls

-not 是非的关系 也能使用 !代替

find /dev -name a  "std*" -type l -ls

如果使用了通配符,需要用双引号

注意: 如果 find 查找路径是当前路径 (默认路径) 那结果也是当前路径

如果 find 查找路径是绝对路径 , 那结果也是绝对路径

如果希望使用当前路径 输出绝对路径 可以用 $ (pwd) 表示当前路径,或者转义 / pwd

find 后的路径 可以 是多个路径 空格分开

举报

相关推荐

0 条评论