学习Linux就像学习英语一样,熟练掌握Linux指令,就像学习英语单词一样。只有学习好英语单词,才有可能会写出英语文章,会做英语翻译。那么同样,只有掌握了Linux的基础指令,才能在Linux环境下进行网络编程,才能很好的熟悉新环境Linux。他们的共同点还有,想要掌握他们,必须经常使用这些单词或指令。下边是我总结的较为常用的指令:
指令的使用格式:命令名【选项】【源操作对象】【目标操作对象】
一 对目录进行的操作指令
(1)ls指令:列出目录下的内容(默认是当前目录。Linux每个用户登陆成功默认进入的当前所在目录是在自己的家目录里边)
-a 查看所有文件并且不忽略以.开头的隐藏文件。
-l 简记为ll,查看文件的详细信息。
-r 对目录进行反向排序。
-t 以时间排序。
(2)pwd指令:显示用户当前所在的目录。
绝对路径:/home/zr123/main.c
相对路径:../zr123/main.c (需要先查找当前目录)
(3)mkdir指令:创建目录
-p 递归创建目录
(4)cd指令:进入目录(改变工作目录)
cd .. 返回上级目录。
cd ~ 返回到家目录下
cd /home/zr123/main.c 返回到该指定目录下。
cd - 返回到最近访问过的目录
(5)rmdir指令:删除空目录。
-p 从下往上递归式的删除空目录。
(6)rm指令:可以同时删除文件或目录。
-r 删除目录及其下所有文件
-i 删除前进行提示
二 对文件进行的操作指令
(1)touch指令:更改文件或目录的世间,或者新建一个不存在的文件。
-m 只更改变动时间。
-r 把指定文件或目录的日期全部设置成和参考文件或目录的日期时间相同。
-t 使用指定的日期时间。
(2)cat指令: 打印文件的内容。
-n 标行号进行打印。
(3)more指令: 按页显示文件内容。
空格 向下翻页
b 向上翻页
回车 按行向下走
q 退出
(4)less指令:查找,即可以向前,也可以向后,即可以随意查找。
f 空格 pagedown 向下翻页
b pageup 向上翻页
/string 向下匹配string的字符串
?string 向上匹配stringd的字符串
(5)head指令: 显示文件前n行内容,默认前10行。
(6)tail指令: 从指定点开始将文件写到标准输出。
-f 动态涮新显示文件末尾内容,常用于查看日志。
(7)cp指令: 复制文件或目录。
-f 强行复制文件或目录,不论目的文件或目录是否已经存在。
(8)mv指令: 移动。
-i 若目标文件已经存在时,就会询问是否覆盖。
三 压缩有关的操作指令
(1)zip 压缩,unzip 解压。 例如:zip bit.zip bit.txt
(2)gzip 压缩,gunzip 解压。 例如: gzip hello.txt
(3)bzip2 压缩,bunzip2 解压。
(4)tar ,打包文件
-c 打包
-x 解包
四 查找匹配的操作指令
(1)find指令: 文件查找
-name 按照文件名查找
-type 按照文件类型查找
-size 按照文件大小查找(例如:-size + 10k 查找大于10k的文件)
-mmin 按照时间查找。(例如:find ./-mmin -20 查找最后更改时间在20min以内的文件)
(2)grep 指令: (例如: grep "zha" 在目标文件中查找含有”zha"的行)
-i 忽略大小写进行匹配
-v 反向匹配,匹配的是不包含指定字符串的行
五 其他操作指令
(1)cal 指令:查看日历,默认打印当前月日历
-j 默认打印当前月的每一天是该年的第几天。
-y 查看全年日历。
(2)bc 指令:计算器。
掌握了基础指令后,了解Linux环境下的重要目录也很重要。我在参考他人的博客(https://blog.csdn.net/yummy_alice/article/details/79467124 )基础上,对以下目录进行总结:
1./proc
最初开发 /proc 文件系统是为了提供有关系统中进程的信息。但是由于这个文件系统非常有用,因此内核中的很多元素也开始使用它来报告信息,或启用动态运行时配置。/proc 文件系统包含了一些目录(用作组织信息的方式)和虚拟文件。虚拟文件可以向用户呈现内核中的一些信息,也可以用作一种从用户空间向内核发送信息的手段。它以文件系统的方式为访问系统内核数据的操作提供接口.
2./sys
文件系统访问Linux内核。sysfs 文件系统总是被挂载在 /sys 挂载点上。
3.SElinux
SELinux是一种基于域-类型模型(domain-type)的强制访问控制(MAC)安全系统,它由NSA编写并设计成内核模块包含到内核中,相应的某些安全相关的应用也被打了SELinux的补丁,最后还有一个相应的安全策略。
4./bin
可以执行二进制文件下的目录,例如 ls, tar, cat ,cp。/bin目录不得包含任何子目录。
5./usr/lib
存放一些程序运行时所必须的函数库。包含各应用软件的函式库、目标档案,以及不被一般使用者惯用的执行档案或脚本,某些软件会提供一些特殊的指令来进行服务器的设定,这些指令也不会经常被系统管理员操作,也在这里。
6./usr/local
/usr/local下一般是你安装软件的目录,这个目录就相当于在windows下的programefiles这个目录 。一般提供给普通用户的/usr目录,/usr/local 适合安装软件,存放软件升级包。
7./var
/var存放经常扩充,不断变化的东西。那些经常被修改的文件可以存放在这个目录下。
8./tmp
(1)、/tmp文件是linux运行时产生的缓存文件,用于加速二次打开文件的速度。
(2)、tmp文件在linux关机时会被系统预设指令删除的。
本文的Linux环境中的重要目录主要从浏览器上搜索,特此说明。