时间相关指令
date
data指令可以用于查看时间以及修改时间
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24用法:date [选项]... [+格式]
-s, --set=STRING set time described by STRING
给定的格式FORMAT 控制着输出,解释序列如下:
%Y 年
%m 月 (01..12)
%d 日(例如:01)
%u 星期,1 代表星期一
%H 时(00-23)
%M 分(00..59)
%S 秒(00-60)
%a 当前locale 的星期名缩写(例如: 日,代表星期日)
%A 当前locale 的星期名全称 (如:星期日)
%b 当前locale 的月名缩写 (如:一,代表一月)
%B 当前locale 的月名全称 (如:一月)
%c 当前locale 的日期和时间 (如:2005年3月3日 星期四 23:05:25)
# 例子
zuo@zuo-VirtualBox:~$ date "+%Y/%m/%d %H:%M:%S"
2018/07/19 17:19:44
# 设置时间,只有root才能使用,为了避免麻烦就不改了
zuo@zuo-VirtualBox:~$ date -s "2018-8-15 10:23"
date: 无法设置日期: 不允许的操作
2018年 08月 15日 星期三 10:23:00 CSTcal
显示日历
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20cal [-m month] [year]
# 例子
zuo@zuo-VirtualBox:~/Sample$ cal
七月 2018
日 一 二 三 四 五 六
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
zuo@zuo-VirtualBox:~/Sample$ cal -m 4
四月 2018
日 一 二 三 四 五 六
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
查找指令
find
查找文件,会读取硬盘,因此可能会很慢,可以使用通配符
*
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17find [PATH] [option] [action]
-name filename :搜寻文件名称为 filename 的文件
-regex pattern : 按照正则表达式搜索文件,不过要注意pattern必须是绝对路径
比如:find / -regex "find" 这样子是找不到/usr/bin/find的, 要像这样find / -regex ".*find"
-size [+-]SIZE :搜寻比 SIZE 还要大(+)或小(-)的文件。这个 SIZE 的规格有:
c: 代表 byte, k: 代表 1024bytes。所以,要找比 50KB
还要大的文件,就是『 -size +50k 』
-user name :name 为使用者帐号名称
-mtime n :n 为数字,意义为在 n 天之前的『一天之内』被更动过内容的文件
-newer file :file 为一个存在的文件,列出比 file 还要新的文件档名
# 例子,找出 符合 xxx.xxx 并且大小小于 100B 的文件
zuo@zuo-VirtualBox:~/Sample$ find . -regex '.*/\w+\.\w+' -size -100c
./2/Src.cpp
./1/Src.cpp
./Temp.pylocate
(比find快,推荐优先使用)同样是查找文件, locate 的使用更简单,直接在后面输入“文件的部分名称” 后,就能够得到结果。 同样可以使用通配符
*
举上面的例子来说,输入 locate passwd ,那么在完整路径名称当中,只要有 passwd 在其中, 就会被显示出来的 。
这条指令要比 find 指令的速度快很多,因为它是在数据库当中进行查找。但也应如此,如果你的文件名在数据库当中不存在的话,就无法找到。
数据库的创建默认是在每天运行一次 。手动升级 locate 数据库的方法非常简单,直接输入
updatedb
就可以了(root)。另外,locate 没有指定目录的选项,要找就一定是全盘搜索。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15Usage: locate [OPTION]... [PATTERN]...
-i, --ignore-case 忽略大小写
-r, --regexp REGEXP 使用正则表达式
# 例子
# 找不到,因为数据库未更新
zuo@zuo-VirtualBox:~/Sample$ locate Temp.java
# 更新数据库
zuo@zuo-VirtualBox:~/Sample$ sudo updatedb
[sudo] zuo 的密码:
zuo@zuo-VirtualBox:~/Sample$ locate Temp.java
/home/zuo/Sample/Temp.java
# 通配符,指定目录
zuo@zuo-VirtualBox:~/Sample$ locate /home/zuo/Sample/*.py
/home/zuo/Sample/Temp.py
其他指令
echo
1
2
3
4
5
6
7
8
9echo: echo [-neE] [参数 ...]
将参数写到标准输出。
在标准输出上,显示用空格分割的 ARG 参数后跟一个换行。
选项:
-n 不要追加换行
-e 启用下列反斜杠转义的解释
-E 显式地抑制对于反斜杠转义的解释history
显示曾经执行的历史指令