Linux:常见指令

个人主页 : 个人主页

个人专栏 : 《数据结构》 《C语言》《C++》

文章目录


前言

本篇博客作为Linux常见指令的总结,主要是方便个人进行回顾使用。


一、常见指令

ls指令

语法:ls [选项] [目录或文件]

功能:对于目录,该命令列出该目录下的所示子目录雨文件。对于文件,将列出文件名以及其它信息。

常用选项:

-a 列出目录下的所有文件,包括以 . 开头的隐藏文件

-d 将目录像文件一样显示,而不是显示其下的文件。如ls -d 指定目录

-i 输出文件的i节点的索引信息。如ls -ai指定文件

-k 以k字节的形式表示文件的大小。如 ls -alk指定文件

-l 列出文件的详细信息

-n 用数字的UID,GID代替名称

-F 在每个文件名后附上一个字符以说明该文件的类型," * "表示可执行的普通文件;" / "表示目录," @ "表示符号链接;" | "表示FIFOs;" = "表示套接字(sockets)。

-r 对目录反向排序

-t 以时间排序

-s 以l文件名后输出该文件的大小。(大小排序,如何找到目录下最大的文件)

-R 列出所有子目录下的文件

-1 一行只输出一个文件


pwd指令

语法:pwd

功能:显示用户当前所在的目录


cd指令

在linux系统中,磁盘上的文件和目录被组成一个目录树,该树的每个节点都是目录或文件(如下图所示)

绝对路径:如上图mps到pics的绝对路径就是/home/mark/pics

相对路径:如上图mps到pics的相对路径就是.../pics

为什么路径是唯一的?

每一个节点可能有多个子节点,但每个节点只能有一个父节点(根节点除外)

语法:cd 目录名

功能:改变工作目录。将当前工作目录改变到指定目录下

常用选项:

cd ... :返回上级目录

cd /home :以决定路径返回家目录

cd .../d2 :以相对路径到上级目录下的d2目录

cd ~:进入用户的家目录

cd - :返回最近访问的目录


touch指令

语法:touch [选项] 文件名

功能:touch命令参数可更改文档或目录的日期时间(touch已存在的目录或文件),包括存取时间和更改时间,或者新建一个不存在的文件

对已存在文件或目录更改时间

新建一个不存在的文件

常用选项:

-a(--time=atime 或 --time=use) :只用更改存取时间

-c(--no-create): 不建立任何文档

-d:使用指定的文件日期时间,而非现在的时间

-f:此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题

-m(--time=mtime 或 --time=modify):只更改变动时间

-r:把指定文档或目录的日期时间,统统设成参考文档或目录的日期时间

-t:使用指定的日期时间,而非现在的时间


mkdir指令

语法:mkdir [选项] 目录名

功能:在当前目录下创建一个名为" dirname "的目录

常用选项:

-p:--parents 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好哪些尚不存在的目录,即可一次建立多个目录


rmdir指令

语法:rmdir [-p] [目录名]

适用对象:具有当前目录操作权限的所以作者

功能:删除空目录

tree命令(以树状的形式打印当前目录)通过下面指令下载:

powershell 复制代码
yum install -y tree

常用选项:

-p:当子目录被删除后,如果父目录也变成空目录,就连带父目录一起删除。


rm指令

语法:rm [选项] [目录名/文件名]

适用对象:所有使用者

功能:删除文件或目录

删除文件

删除目录

常用选项:

-f:既是文件属性为只读(即写保护),也可以直接删除

-i:删除前逐一询问确认

-r:删除目录及其下所有文件


man指令

语法:man [选项] 命令

功能:访问Linux手册页

建议新手学linux先执行如下指令:

powershell 复制代码
yum install -y man-pages

如访问C语言的printf

按q退出,按上下键上翻下翻

常用选项:

-k:根据关键词搜索联机帮助

num:只在第num章节查找

-a:将所有章节都显示出来,

面手册分为8章:

1.是普通命令

2.是系统调用,如open,write子类的(可以通过这个,查找到对应的头文件等等)

3.是库函数

4.特殊文件,设备文件

5.是指文件的格式

6.是给游戏留的

7.是附件还有一些变量

8.是系统管理用的命令


cp指令

语法:cp [选项] 源文件或目录 目标文件或目录

功能:复制文件或目录

说明:cp指令用于复制文件或目录,如同是知道两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则会把前面指定的所有文件或目录复制到此目录中。若同时知道多个文件或目录,而最后的目的地并非一个已存在的目录,则会错误信息

常用选项:

-f(--force):强制复制文件或目录,不论目的文件或目录是否已经存在

-i(--interactive):覆盖文件之前先询问用户

-r:递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链接,则一律视为普通文件处理

-R(--recursive) :递归处理,将指定目录下的文件及子目录一并处理


mv指令

语法:mv [选项] 源文件或目录文件 目标文件或目录

功能:

1.视mv命令中第二个参数类型的不同,mv命令将重命名 或 将其移至一个新的目录中(剪切)

2.当第二个参数类型时文件时,mv命令完成文件的重命名,此时,源文件只能有一个(也可以是原目录名),它将所给的源文件或目录重命名为给定的目标文件名

重命名:

3.当第二个参数类型时已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至目标目录中

剪切:

常用选项:

-f:force是强制的意思,如果目标文件已经存在,不会询问而直接覆盖

-i:若目标文件已存在时,就会询问是否覆盖


cat指令

语法:cat [选项] [文件]

功能:查看目标文件的内容

常用选项:

-b:对非空输出行编号

-n:对输出所有行编号

-s:不输出多行空行


tac指令

语法:tac [选项] [文件]

功能:反向查看文件的内容


echo指令

语法:echo [-n] 字符串

功能:在显示器上显示字符串

其中选项n表示输出字符串后不换行。

echo指令可以和>(输出重定向),>>(追加重定向)配合使用

输出重定向:每次将内容写入文件前,先清空原始文件的内容(类似于C中以" w "的方式打开文件)

追加重定向:将内容追加至文件的末尾(类似于C中以" a "的方式打开文件)。


more指令

语法:more [选项] [文件]

功能:more命令,功能类似cat

more指令适用于大文件中查看

如下(已打开):

按q退出,但这里推荐使用less指令来查看大文件


less指令

语法: less [参数] [文件]

功能:less与more类似,但使用less可以随意浏览文件,而more仅能向前移动,却不能向后移动,而且less在查看之前不会加载整个文件

(已打开)

按q退出,按上下键上翻下翻

常用选项:

-i:忽略搜索时的大小写

-N:显示每行的行号

字符串 :向下搜索字符串

?字符串:向前搜索字符串

n:重复前一个搜索(与 / 或 ? 有关)

N:反向重复前一个搜索(与 / 或 ? 有关)

q:退出less


head指令

语法:head [参数] [文件]

功能:显示档案的开头至标准输出中,默认head命令打印其相应文件开头的10行。

选项:

-n(行数):显示的行数


tail指令

语法: tail [必要参数] [选择参数] [文件]

功能:用于显示指定文件末尾的内容显示在屏幕上,并且不断刷新,使用户看到最新的文件内容

选项:

-f:循环读取

-n(行号):显示行数

如何显示一个文件的中间部分?

比如,对下面文件如何显示55到57行的内容?

进行如下操作即可。

这里 ' | '被称为管道,它将head -57 test.c形成的结果变成一个临时文件,再将该临时文件给tail -3处理。


date显示

date指定格式显示时间:date + %Y:%m:%d

date用法:date [选项] [输出格式]

  1. 在显示方面,使用者可以设定想要显示的格式,格式设定为一个加号后接数个标记,其中常用的标记列表如下:

    %H:小时

    %M:分钟

    %S:秒

    %X:相当与 %H:%M:%S

    %d:日

    %m:月份

    %Y:完整年份

    %F:相当于%Y-%m-%d

  2. 在设定时间方面

    date -s 设置当前时间,只有root权限才能设置,其它用户只能查看

    date -s 20080101 设置成20080101,这样会把具体时间设置成空(00:00:00)

    date -s 01:01:01 设置具体时间,不会对日期做更改

    date -s "01:01:01 2008-01-23" 这样可以设置全部时间

    date -s "01:01:01 200801010" 这样也可以设置全部时间

    date -s "2008-01-01 01:01:01" 这样可以设置全部时间

    date -s "20080101 01:01:01" 这样可以设置全部时间

时间戳是从1970年1月1日开始所经过的秒数,不考虑闰年秒

时间戳就是从1970年1月1日0点到现在所经过的秒数的累计。

时间到时间戳的转换:date +%s

时间戳到时间的转换:date -d@nums(具体的时间戳的值)


Cal指令

语法:Cal [参数] [月份] [年份]

功能:用于查看日历等时间信息,如只有一个参数,则表示年份(1-9999),如有两个参数,则表示月份和年份

常用选项:

-3:显示系统当前一个月,当前月,下一个月的日历

-j:显示在当前年中的第几天(一年日期按天数,从一月一号开始,默认显示当前月在一年的天数)

-y:显示当前年份的日历


find指令

语法:find [路径] [选项]

功能:用于在文件树中查找文件,并做出相应的处理

常用选项:

-name 按照文件名查找文件

这里还有which,whereis等指令,也是查找指令


grep指令

语法:grep [选项] 搜索字符串 文件

功能:在文件中搜索字符串,将找到的行打印出来

常用选项:

-i:忽略大小写的不同,所以大小写视为相同

-n:顺便输出行号

-v:反向选择,将匹配的内容去掉,显示未匹配的内容


总结

以上就是我对于Linux常见指令的总结。感谢支持!!!

相关推荐
王哲晓1 小时前
Linux通过yum安装Docker
java·linux·docker
gopher95111 小时前
linux驱动开发-中断子系统
linux·运维·驱动开发
码哝小鱼1 小时前
firewalld封禁IP或IP段
linux·网络
鼠鼠龙年发大财1 小时前
【x**3专享】安装SSH、XFTP、XShell、ARM Linux
linux·arm开发·ssh
nfgo1 小时前
快速体验Linux发行版:DistroSea详解与操作指南
linux·ubuntu·centos
Rookie_explorers2 小时前
Linux下go环境安装、环境配置并执行第一个go程序
linux·运维·golang
weixin_424215842 小时前
shell运算实战案例-KFC点餐系统
linux·centos
小黑爱编程3 小时前
【LInux】HTTPS是如何实现安全传输的
linux·安全·https
BeyondESH3 小时前
Linux线程同步—竞态条件和互斥锁(C语言)
linux·服务器·c++
鱼饼6号3 小时前
Prometheus 上手指南
linux·运维·centos·prometheus