Linux下基本指令-掌握

目录

为什么要学命令行

Linux下基本指令-掌握

[ls 指令](#ls 指令)

pwd命令

[cd 指令](#cd 指令)

touch指令

mkdir指令(重要):

[rmdir指令 && rm 指令(重要):](#rmdir指令 && rm 指令(重要):)

man指令(重要):

cp指令(重要):

mv指令(重要):

cat

date

top

shutdown-关机

为什么要学命令行

  • windows/苹果图形界面,是商业化的产物,也就是使用必须简单小白,才能有人用
  • 严格意义上讲,我们必须要学一下Linux命令行。因为企业后端有大量的服务器,服务器上跑的全是 Linux,Linux上部署的全是服务(比如:qq的服务,王者荣耀,LOL的服务等),无论是成本角度,还是 资源效率角度,后台的服务器,都不会大量给你也安装一个界面让你来控制(界面也是要占系统资源的 哦)但是服务器上面的服务需要维护,需要管理,也就衍生大量的对基本操作的需求。也就是企业的用人需求
  • Linux命令行是职业化的表现,想职业化/成大神,必须掌握Linux
  • Linux命令行,更接近系统原生,用的多了,面对很多系统现象,会更好理解

严格意义上讲,光光学习Linux操作是远远不够的

Linux下基本指令-掌握

ls****指令

语法 : ls 选项 目录或文件
功能 :对于目录,该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息。
常用选项:

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

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

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

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

  • -l 列出文件的详细信息。

  • -t 以时间排序。

  • -R 列出所有子目录下的文件。(递归)

pwd****命令

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

最开始的 / :根目录
其他的 /:路径分隔符

cd****指令

Linux 系统中,磁盘上的文件和目录被组成一棵目录树,每个节点都是目录或文件
Linux 的目录结构,整体是一颗多叉树的结构。
可以用 tree+目录 来展现

需要输入yum install -y tree 下载

语法 :cd 目录名
功能 :改变工作目录。将当前工作目录改变到指定的目录下。
举例

复制代码
 cd .. : 返回上级目录
 cd /home/xxx/xxxx/ : 绝对路径
 cd ../xxx/ : 相对路径(相对于当前路径)
 cd ~:进入用户家目
 cd -:返回最近访问目录

. : 特殊目录,当前目录

. . : 特殊目录,上级目录

Linux下,每个目录中都有这两个阴藏目录。

/ 根目录的 . . 依旧是根目录

touch****指令

语法 :touch 选项 ... 文件 ...
功能 : touch 命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。
常用选项

  • -a 或--time=atime或--time=access或--time=use只更改存取时间。

  • -d 使用指定的日期时间,而非现在的时间。

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

  • -m 或--time=mtime或--time=modify 只更改变动时间。

  • -r 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。

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

mkdir****指令(重要):

语法 : mkdir 选项 dirname...
功能 :在当前目录下创建一个名为 "dirname" 的目录
常用选项
-p, --parents 可以是一个路径名称。此时若路径中的某些目录尚不存在 , 加上此选项后 , 系统将自动建立好
那些尚不存在的目录 , 即一次可以建立多个目录 ;

rmdir指令&& rm****指令(重要):

rmdir 是一个与 mkdir 相对应的命令。 mkdir 是建立目录,而 rmdir 是删除命令。
语法 : rmdir -p dirName
适用对象 :具有当前目录操作权限的所有使用者
功能 :删除空目录
常用选项
-p 当子目录被删除后如果父目录也变成空目录的话,就连带父目录一起删除。
rm 命令可以同时删除文件或目录
语法 : rm -f-i-r-v dirName/dir
适用对象 :所有使用者
功能 :删除文件或目录
常用选项

  • -f 即使文件属性为只读(即写保护),亦直接删除
  • -i 删除前逐一询问确认
  • -r 删除目录及其下所有文件

man****指令(重要):

Linux 的命令有很多参数,我们不可能全记住,我们可以通过查看联机手册获取帮助。访问 Linux 手册页的命令是 man
语法 : man 选项 命令
常用选项

  • -k 根据关键字搜索联机帮助 num 只在第num章节找
  • -a 将所有章节的都显示出来,比如 man printf 它缺省从第一章开始搜索,知道就停止,用a选项,当按下 q退出,他会继续往后面搜索,直到所有章节都搜索完毕。

解释一下 , 面手册分为 8 章

  1. 是普通的命令
  2. 是系统调用,如open,write之类的(通过这个,至少可以很方便的查到调用这个函数,需要加什么头文件)
  3. 是库函数,如printf,fread
  4. 是特殊文件,也就是/dev下的各种设备文件
  5. 是指文件的格式,比如passwd, 就会说明这个文件中各个字段的含义
  6. 是给游戏留的,由各个游戏自己定义
  7. 是附件还有一些变量,比如向environ这种全局变量在这里就有说明
  8. 是系统管理用的命令,这些命令只能由root使用,如ifconfig

cp****指令(重要):

语法 : cp 选项 源文件或目录 目标文件或目录
功能 : 复制文件或目录
说明 : cp 指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则 它会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后的目的地并非一个已存在的 目录,则会出现错误信息
常用选项

  • -f 或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在
  • -i 或 --interactive 覆盖文件之前先询问用户
  • -r递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链接,
  • 则一律视为普通文件处理
  • -R 或 --recursive递归处理,将指定目录下的文件及子目录一并处理

mv****指令(重要):

mv 命令是 move 的缩写,可以用来移动文件或者将文件改名( move (rename) files ),是 Linux 系统下常用的命令, 经常用来备份文件或者目录。
语法 : mv 选项 源文件或目录 目标文件或目录
功能 :

  1. 视 mv 命令中第二个参数类型的不同(是目标文件还是目标目录), mv 命令将文件重命名或将移至一个新的目录中。
  2. 当第二个参数类型是文件时, mv 命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名。
  3. 当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个, mv 命令将各参数指定的源文件均移至目标目录中。
    常用选项
  • -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖
  • -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!

cat

语法 : cat 选项 文件
功能 : 查看目标文件的内容
常用选项

  • -b 对非空输出行编号
  • -n 对输出的所有行编号
  • -s 不输出多行空行

date

date 指定格式显示时间: date +%Y:%m:%d
date 用法: date OPTION... +FORMAT
1. 在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记,其中常用的标记列表如下

  • %H : 小时(00..23)
  • %M : 分钟(00..59)
  • %S : 秒(00..61)
  • %X : 相当于 %H:%M:%S
  • %d : 日 (01..31)
  • %m : 月份 (01..12)
  • %Y : 完整年份 (0000..9999)
  • %F : 相当于 %Y-%m-%d

2. 在设定时间方面

  • date -s //设置当前时间,只有root权限才能设置,其他只能查看。
  • date -s 20080523 //设置成20080523,这样会把具体时间设置成空00:00:00
  • date -s 01:01:01 //设置具体时间,不会对日期做更改
  • date -s "01:01:01 2008-05-23″ //这样可以设置全部时间
  • date -s "01:01:01 20080523″ //这样可以设置全部时间
  • date -s "2008-05-23 01:01:01″ //这样可以设置全部时间
  • date -s "20080523 01:01:01″ //这样可以设置全部时间

3. 时间戳
时间 -> 时间戳
date +%s
时间戳 -> 时间
date +%Y:%m:%d -d @1599642565
Unix 时间戳(英文为 Unix epoch, Unix time, POSIX time 或 Unix timestamp )是从 1970 年 1 月 1 日( UTC/GMT 的午 夜)开始所经过的秒数,不考虑闰秒。

top

Linux 下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于 Windows 的任务管理器。
我们目前要了解的选项

  • -u<用户名> 指定用户名
  • -p<进程号> 指定进程
  • -n<次数> 循环显示的次数

**shutdown-**关机

语法 : shutdown 选项
常见选项:

  • -h : 将系统的服务停掉后,立即关机
  • -r : 在将系统的服务停掉之后就重新启动
  • -t sec : -t 后面加秒数,亦即『过几秒后关机』的意思

如果各位购买了云服务器,尽量不要使用 shutdown 来关机,因为云服务器一般都要保证服务器一直在 线,使用exit 或者 ctrl+d 退出即可
(如有问题,烦请指出)。

相关推荐
A小辣椒1 天前
TShark:Wireshark CLI 功能
linux
A小辣椒1 天前
TShark:基础知识
linux
AlfredZhao1 天前
OCI 明明分配了 200G 系统盘,为什么 df 只看到 30G?
linux·oci
AlfredZhao2 天前
vi 删除指定范围的行,不用再反复按 dd
linux·vi
用户9718356334662 天前
银河麒麟 KY10 申威(SW64) 安装 nginx-1.16.1-2.p01.ky10.sw_64.rpm 详细步骤
linux
猪脚踏浪2 天前
linux 拷贝文件或目录到指定的位置
linux
摇滚侠3 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
bush43 天前
嵌入式linux学习记录十四、术语
linux·嵌入式
载数而行5203 天前
Linux 11 动态监控指令top
linux
不会C语言的男孩3 天前
Linux 系统编程 · 第 8 章:进程基础
linux·c语言