第十篇 linux常用命令
linux常用命令简介,分成几大类,作为平时的一个累积
用户与文件
chown改变文件的所有者和所属组
1chown [OPTION]... [OWNER]:[GROUP] FILE...如果递归地改变目录和其下面的所有目录和文件
1chown -R learner:learner dir1whereis 查找系统命令
1whereis [option] name...命令作用是显示命令名称的绝对路径和命令的手册位置
du 估算文件占用空间大小
1du [OPTION]... [FILE]...查看文件的大小
输出的结果第一列表示所占空间大小(单位是KB)。第二列是文件名。
可以使用选项-h 的方式显示:1234[weblogic@localhost ~]$ du bin/32 bin/[weblogic@localhost ~]$ du -h bin/32K bin/当使用-s选项作用在目录上时,值显示总用量。不用时则显示该目录下的每个文件
head tail more less 查看内容
1[root@localhost /]# head -n 3 /etc/passwd- head从文件的第一行开始显示,默认显示十行,选项-n可以指定行数
- tail从文件的最后一行开始显示,-n同上
- more和less两个命令的作用都是分页显示文件内容,区别是more不允许往回翻,只能用enter键和空格键分别显示下一行和下一页(类似于man命令),less允许往回翻,向上箭头和pageup按键也是可用的。
ln 在文件间创建连接
1ln [OPTION]... TARGET LINK_NAME硬链接
123456[root@centos7 temp]# ln file1 file2[root@centos7 temp]# ls -i file1856994 file1[root@centos7 temp]# ls -i file2856994 file2[root@centos7 temp]#命令ls -i显示出两个文件的inode号是一样的,对系统来说,file1与file2其实是同一个文件。当删除一个文件的时候,只有文件的硬链接数为0时,这个文件才被删除。
软连接(soft link、symbolic link)
123[root@centos7 temp]# ln -s file3 file4[root@centos7 temp]# ls -l file4lrwxrwxrwx 1 root root 5 10月 26 12:53 file4 -> file3文件A和文件B的inode号码虽然不一样,但是文件A的内容是文件B的路径。读取文件A时,系统会自动将访问者导向文件B。
shell通配符及命令行快捷键
1* ? [...] # bash中支持三种标准通配符,当查找文件时,用通配符来代替一个或多个真正字符*匹配0到多个任意字符
?匹配一个任意字符
[]匹配它内部的任意单个字符
[]内部还可以写成这样表示一个字符范围12ls file[1357]ls file[1-9]当[]内部紧跟在[后面的字符是^或!时,表示取反,不在这个范围内的字符会被匹配到
在[]内部还支持字符组,字符组的格式是[:class:],其中字符组可以是如下类型:1234567891011121314alnum 匹配字母和数字alpha 匹配字母ascii 匹配ASCII码blank 匹配空格和制表符'\t'cntrl 匹配控制字符digit 匹配数字graph 匹配非空白字符lower 匹配小写字母print 类似graph,但包含空白字符punct 匹配标点符号space 匹配空白字符upper 匹配大写字母word 匹配字母、数字和下划线_xdigit匹配十六进制数字
文件搜索
find
1find [path...] [expression]选项 -name pattern 搜索文件名
选项 -maxdepth n 指定搜索路径的最大深度
选项 -user name 按照文件属性主来查找文件
选项 -mtime n 文件上次内容被修改距离现在n*24小时,+n表示大于n,-n表示小于n,n表示你等于n
选项 -newer file 表示搜索到的文件比指定的fiel要新1find /root -name "file1?" -newer "file12"选项 -path pattern 文件名匹配pattern(通配符)
1find /root -name "file1?" -path "./file[13]"通常-path会配合选项-prune使用,表示对某目录的排除
选项-type x表示搜索类型为x的文件
选项-perm mode表示搜索特定权限的文件
选项-size n表示搜索文件大小
打包压缩
gzip 压缩或解压文件
1gzip [OPTION]... [FILE]...当命令后直接跟文件时,表示压缩该文件
123456789101112[root@centos7 temp]# ls -l file1*-rw-r--r-- 1 root root 132 10月 27 13:28 file10-rw-r--r-- 1 root root 64 10月 27 15:06 file11-rw-r--r-- 1 root root 22 10月 26 21:31 file12-rw-r--r-- 1 root root 137 10月 12 16:42 file13[root@centos7 temp]#[root@centos7 temp]# gzip file10 file11 file12 file13[root@centos7 temp]# ls -l file1*-rw-r--r-- 1 root root 75 10月 27 13:28 file10.gz-rw-r--r-- 1 root root 49 10月 27 15:06 file11.gz-rw-r--r-- 1 root root 44 10月 26 21:31 file12.gz-rw-r--r-- 1 root root 109 10月 12 16:42 file13.gz选项-d表示解压缩
1gzip -d *.gz选项-r可以递归地进入目录并压缩里面的文件
选项-n指定压缩级别,n为从1-9的数字。1为最快压缩,但压缩比最小;9的压缩速度最慢,但压缩比最大。默认时n为6zcat 将压缩的文件内容输出到标准输出
1zcat hello.gzbzip2 压缩解压文件
1bzip2 [OPTION]... [FILE]...命令bzip2和gzip类似都是压缩命令,只是使用的压缩算法不一样,通常bzip2的压缩比较高。本命令默认同样不保留源文件,默认文件名后缀为.bz2
选项-k可使源文件保留
选项-f表示强制覆盖源文件tar 打包压缩文件
1tar [OPTION...] [FILE]...选项 -c 打包
选项 -f 表示指定打包文件名
选项 -x 对归档文件进行提取操作。(解包)
选项 -t 列出归档内容
选项 -v 详细地列出处理的文件
选项 -u 更新归档文件(update)
vim
插入模式
123456a 在光标所在位置下一个字符开始输入A 在光标所在行尾开始输入i 在光标所在位置开始输入I 在光标所在行首开始输入o 在光标所在行下新增一行,并在新增行行首开始输入O 在光标所在行上新增一行,并在新增行行首开始输入底行模式
123: 执行命令/ 正向搜索? 反向搜索普通模式下
12345678910111213141516171819202122232425262728293031323334353637文本修改:. 重复上一个命令x 删除光标位置的字符d 从光标处开始剪切dd 剪切光标所在位置的整行(保存在临时缓冲区)ndd n为数字,表示从当前行开始,从上到下剪切n行p 将缓冲区中的内容放到当前行之下np n是数字,相当于执行n次p命令P 将缓冲区中的内容放到当前行之上y 从光标处开始复制yy 复制当前行(保存在临时缓冲区)nyy n为数字,表示从当前行开始,从上到下复制n行r 替换光标所在位置的一个字符R 从光标位置开始替换,并进入文本输入模式(ESC退出)u 撤销上一次操作ZZ 保存退出移动光标:h或左箭头键 光标向左移动一格l或右箭头键 光标向右移动一格j或下箭头键 光标向下移动一格k或上箭头键 光标向上移动一格0 光标移动到当前行开头^ 光标移动到当前行非空白字符(如空格、tab键等)的开头$ 光标移动到当前行结尾g_ 光标移动到当前行非空白字符的结尾w 光标移动到下一个单词的开头e 光标移动到下一个单词的结尾* 匹配光标所在单词,移动到下一个相同的单词# 匹配光标所在单词,移动到上一个相同的单词f{ 光标移动到当前行的下一个字符{处,{可以换成其他字符F} 光标移动到当前行的上一个字符}处t, 光标移动到当前行的下一个逗号之前一个字符处T, 光标移动到当前行的上一个逗号之后一个字符处% 移动到成对括号的另一半括号处,包括() {} [].需要先将光标移动到括号上。gg 光标移动到文件第一行行首G 光标移动到文件最后一行行首回车键 光标移动到下一行行首