引子:在之前,我们经常听到Linux,那什么是Linux呢?Linux是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹(Linus Benedict Torvalds)于1991年10月5日首次发布,它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。它支持32位和64位硬件,能运行主要的Unix工具软件、应用程序和网络协议!
那今天我们就来讲一讲Linux的常见指令!
基本常识:
Linux是一个操作系统,在学习过程中,可以参照Windows系统,一一对应!
Linux省略/bin,从本质上讲,指令就是文件
*为全配置,.为当前路径,..为上级路径!
Linux在结构上是一个树,每个路径都是唯一的,分为相对路径,绝对路径。每个目录都有 . , ..
AS:
......
常见指令一:ls指令:令用于显示指定工作目录下之内容(列出目前工作目录所含的文件及子目录)
- -a 显示所有文件及目录 (. 开头的隐藏文件也会列出)(重点)
- -d 只列出目录(不递归列出目录内的文件)。
- -l 以长格式显示文件和目录信息,包括权限、所有者、大小、创建时间等。(重点)
- -r 倒序显示文件和目录。
- -t 将按照修改时间排序,最新的文件在最前面。
- -A 同 -a ,但不列出 "." (目前目录) 及 ".." (父目录)
- -F 在列出的文件名称后加一符号;例如可执行档则加 "*", 目录则加 "/"
- -R 递归显示目录中的所有文件和子目录。
- ls -l # 以长格式显示当前目录中的文件和目录
ls -a # 显示当前目录中的所有文件和目录,包括隐藏文件
ls -lh # 以人类可读的方式显示当前目录中的文件和目录大小
ls -t # 按照修改时间排序显示当前目录中的文件和目录
ls -R # 递归显示当前目录中的所有文件和子目录
ls -l /etc/passwd # 显示/etc/passwd文件的详细信息
常见指令二:pwd指令:可立刻得知您目前所在的工作目录的绝对路径名称。
常见指令三:cd指令:用于进行目录切换,改变工作目录。将当前工作目录改变到指定的目录下。另外,~ 也表示为 home 目录 的意思, . 则是表示目前所在的目录, .. 则表示目前目录位置的上一层目录。cd -:返回最近访问目录!
常见指令四:touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。
- a 改变档案的读取时间记录。
- m 改变档案的修改时间记录。
- c 假如目的档案不存在,不会建立新的档案。与 --no-create 的效果一样。
- f 不使用,是为了与其他 unix 系统的相容性而保留。
- r 使用参考档的时间记录,与 --file 的效果一样。
- d 设定时间与日期,可以使用各种不同的格式。
- t 设定档案的时间记录,格式与 date 指令相同
常见指令五:rm命令用于删除一个文件或者目录
- -i 删除前逐一询问确认。
- -f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。
- -r 将目录及以下之档案亦逐一删除。
as:rm -rf test.txt
常见指令六:mkdir命令用于创建目录
-p 确保目录名称存在,不存在的就建一个
可以建立多个目录,as:mkdir –p test/test1 : 递归建立多个目录
常见指令七:man:用于查看各种命令、函数和配置文件的手册页面。
你想查哪个查哪个!(偷笑)
常用节号:
- 1:用户命令
- 2:系统调用
- 3:C库函数
常见指令八:cp:命令主要用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则 它会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后的目的地并非一个已存在的 目录,则会出现错误信息
-r
:用于复制目录及其所有的子目录和文件,如果要复制目录,需要使用该选项。-i
:在复制前提示确认,如果目标文件已存在,则会询问是否覆盖,回答 y 时目标文件将被覆盖。。-u
:仅复制源文件中更新时间较新的文件。
常见指令九:mv:命令用来为文件或目录改名、或将文件或目录移入其它位置。
- -b: 当目标文件或目录存在时,在执行覆盖前,会为其创建一个备份。
- -i: 如果指定移动的源目录或文件与目标的目录或文件同名,则会先询问是否覆盖旧文件,输入 y 表示直接覆盖,输入 n 表示取消该操作。
- -f: 如果指定移动的源目录或文件与目标的目录或文件同名,不会询问,直接覆盖旧文件。
- -n: 不要覆盖任何已存在的文件或目录。
- -u:当源文件比目标文件新或者目标文件不存在时,才执行移动操作。
常见指令十:cat:命令用于连接文件并打印到标准输出设备上,它的主要作用是用于查看和连接文件
-n
:显示行号,会在输出的每一行前加上行号。-b
:显示行号,但只对非空行进行编号。-s
:压缩连续的空行,只显示一个空行。-E
:在每一行的末尾显示$
符号。-T
:将 Tab 字符显示为^I
。-v
:显示一些非打印字符。
常见指令十一:less 可以随意浏览文件,支持翻页和搜索,支持向上翻页和向下翻页,可用键盘来进行上下查找!
常见指令十二:more:命令类似 cat ,不过会以一页一页的形式显示,更方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能(与 vi 相似),使用中的说明文件,请按 h 。
常见指令十三:find:命令用于在指定目录下查找文件和目录。它可以使用不同的选项来过滤和限制查找的结果。
-o,是or的意思,找多个文件!
常见指令十四:which:命令用于查找文件
- -n<文件名长度> 指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。
- -p<文件名长度> 与-n参数相同,但此处的<文件名长度>包括了文件的路径。
- -w 指定输出时栏位的宽度。
- -V 显示版本信息。
常见指令十五:date:命令可以用来显示或设定系统的日期与时间
在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记,其中常用的标记列表如下
%H : 小时, %M : 分钟
,%S : 秒, %X : 相当于 %H:%M:%S
%d : 日 %m : 月份
%Y : 完整年份 %F : 相当于 %Y-%m-%d
时间戳 date +%s 和 date +%Y:%m:%d -d @1599642565
常见指令十六:grap找字符串区,后用于监视线程的运行
取分大小写,-i不区分大小写,-v把匹配的去除!,-n是有序号!,未来进行指定进程的查找
常见指令十七:zip是个使用广泛的压缩程序,压缩后的文件后缀名为 .zip
实例
1,将 /home/html/ 这个目录下所有文件和文件夹打包为当前目录下的 html.zip:zip -q -r html.zip /home/html
2,如果在我们在 /home/html 目录下,可以执行以下命令:zip -q -r html.zip *
3,从压缩文件 cp.zip 中删除文件 a.c:zip -dv cp.zip a.c
为什么要压缩和打包?
减少网络传输的数据量,多个文件-》一个文件,方便我们进行网络传输!
常见指令十八:alias命令用于设置指令的别名
参数说明:若不加任何参数,则列出目前所有的别名设置,
常用举例:alias hitmp='ls -alf'