一.基本命令
1查看目录清单ls
用ls -l看到的是修改时间,加上选项-u,即用ls -lu看到的是访问时间。
2.浏览文件命令cat、more、less、head和tail
3文件统计命令wc
4改变当前工作目录命令cd
5创建目录命令mkdir
6复制命令cp
cp a.txt b.txt
cp -b a.txt b.txt不覆盖
7创建符号链接和硬链接命令ln (创建快捷方式)
8查看账户名及其所属组的命令whoami、id和groups
9改变权限命令chmod
chmod 700 a.txt rwx 2^2+2^1+2^0=7
chmod u+rwx a.txt chmod o+rwx a.txt
10查看文件的三种时间 stat
11删除命令rm与rmdir
12编辑文件命令vi和vim
I like the book, the blue book. The book isblue. 假设要将book换为magazine。运行vi blue.txt,输入“:s/book/magazine”,按回车键,那么第一个book被改为magazine,如图所示。s是substitute(替换)的意思,第一个斜杠后面是被替换的内容,第二个斜杠后面是新的内容。
“:1,$s/book/magazine/g”,如图2-7所示,按回车键替换完成后,如图2-8所示。其中,1表示第一行,$表示最末一行,标志g是global的意思,表示对一行从头至尾全部搜索替换,而不是只替换第一个匹配。
二、 查找命令find
find命令所查找的目录路径。例如用.来表示当前目录,用/来表示系统根目录。
注意 find 命令的路径是作为第一个参数的,基本命令格式为 find [path][option] [action]
与时间相关的命令参数:
参数 | 说明 |
-atime | 最后访问时间 |
-ctime | 创建时间 |
-mtime | 最后修改时间 |
下面以-mtime参数举例:
- -mtime n: n 为数字,表示为在n天之前的”一天之内“修改过的文件
- -mtime +n: 列出在n天之前(不包含n天本身)被修改过的文件
- -mtime -n: 列出在n天之内(包含n天本身)被修改过的文件
- newer file: file为一个已存在的文件,列出比file还要新的文件名
-print: find命令将匹配的文件输出到标准输出。
-exec:find命令对匹配的文件执行该参数所给出的shell命令。相应命令的形式为'command' { } \;,注意{ }和\;之间的空格。
-ok:和-exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。
#-print 将查找到的文件输出到标准输出
#-exec command {} \; —–将查到的文件执行command操作,{} 和 \;之间有空格
#-ok 和-exec相同,只不过在操作前要询用户
与搜索相关的命令常用的有如下几个whereis
,which
,find
,locate
。
三、解压缩
1. zip
zip -r -q -o test.zip /home/test\
创建加密zip包 使用-e参数可以创建加密压缩包.
du -h test.zip 查看大小
unzip test.zip
将shiyanlou.zip解压到当前目录:
unzip shiyanlou.zip
使用安静模式,将文件解压到指定目录:
unzip -q shiyanlou.zip -d ziptest
使用-O(英文字母,大写o)参数指定编码类型:
unzip-O GBK 中文压缩文件.zip
2. tar
在 Linux 上面更常用的是tar
工具,tar 原本只是一个打包工具,只是同时还是实现了对 7z,gzip,xz,bzip2 等工具的支持,这些压缩工具本身只能实现对文件或目录(单独压缩目录中的文件)的压缩,没有实现对文件的打包压缩,所以我们也无需再单独去学习其他几个工具,tar 的解压和压缩都是同一个命令,只需参数不同,使用比较方便。
tar -cf test.tar ~
上面命令中,-c
表示创建一个 tar包文件,-f
用于指定创建的文件名,注意文件名必须紧跟在-f
参数之后,比如不能写成tar-fc shiyanlou.tar
,可以写成tar -f shiyanlou.tar -c ~
。你还可以加上-v
参数以可视的的方式输出打包的文件。上面会自动去掉表示绝对路径的/
,你也可以使用-P
保留绝对路径符。
解包一个文件(-x参数)到指定路径的已存在目录(-C参数):
tar-xf test.tar -C tardir
只查看不解包文件-t参数: