Linux教程

Linux-1. 基本命令的基本格式

本文主要是介绍Linux-1. 基本命令的基本格式,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1 基本命令的基本格式

目录
  • 1 基本命令的基本格式
    • 1. 命令提示符说明
    • 2. 命令的基本格式
    • 3. 目录相关的命令
      • 3.1 ls 命令
      • 3.2 cd 命令
      • 3.3 pwd 命令
      • 3.4 mkdir 命令
      • 3.5 rmdir 命令
    • 4. 文件操作相关的命令
      • 4.1 touch 命令
      • 4.2 stat 命令
      • 4.3 cat命令
      • 4.4 more 命令
      • 4.5 less 命令
      • 4.6 head 命令
      • 4.7 tail命令
    • 5. 目录和文件都能操作的命令
      • 5.1 rm 命令
      • 5.2 cp 命令
      • 5.3 mv 命令

1. 命令提示符说明

[root@localhost~]#

* []: 这是提示符的分隔符号,没有特殊含义
* root:显示的是当前的登陆用户
* @:分隔符号,没有特殊含义
* localhost:当前系统的简写主机名(完整主机名localhost.localdomain)
* ~:代表用户当前所在的目录的最后一级目录
* #:表示命令提示符。#是超级用户,$是普通用户

提示为当前的家目录

2. 命令的基本格式

[root@localhost~]# [选项][参数]
  • (1)举例ls命令

ls是最常见的目录操作命令,主要作用是显示目录下的内容。

* 命令名称:ls
* 英文原意:list
* 所在路径:/bin/ls
* 执行权限:所有用户
* 功能描述:显示目录下的内容
[root@localhost ~] # ls [选项] [文件名或目录名]

选项:
  -a:显示所有文件
  --color=[when]:支持颜色输出,when的值默认是always(总显示颜色),也可以是never(从不显示颜色)和auto(自动)
  	**ls --color=auto**
  -d:显示目录信息,而不是目录下的文件
  -h:人性化显示,按照我们习惯的单位显示文件大小
  -i:显示文件的i节点号。理论上i节点号不重叠。
  -l:长格式显示(long list)

以上是ls命令,比较常用的选项。
  • (2)说明ls -l 命令的输出内容
ubuntu@ubuntu-HP-Z4-G4-Workstation:~/qiao$ ls -l
总用量 23583748
drwxrwxr-x 4 ubuntu ubuntu        4096 12月 22 14:42 map
-rw-rw-r-- 1 ubuntu ubuntu   212926229 12月 21 19:13 output.tar.gz
drwxrwxr-x 2 ubuntu ubuntu        4096 12月 21 21:29 record
-rw-rw-r-- 1 ubuntu ubuntu        1537 1月   6 21:11 ss.py
内容 说明
drwxrwxr-x 权限
4 引用计数
ubuntu 所有者
ubuntu 所属组
4096 文件大小
12月 22 14:42 文件修改时间
map 文件名
  • 第一列:权限。具体权限的含义在之后权限部分详细讲解。

  • 第二列:引用计数。
    该参数没有太大作用,而且引用计数对于文件和目录是有区别的。
    文件的引用计数代表该文件的硬链接个数。
    目录的引用计数代表该目录有多少个一级子目录。
    也就是说,如果是文件就代表该文件的硬链接个数,如果是目录代表该目录有多少个一级子目录。

  • 第三列:所有者,也就是这个文件属于哪个用户。默认所有者是文件的建立用户。

  • 第四列:所属组。默认所属组是文件建立用户的有效组,一般情况下就是建立用户的所在组。
    为什么一个文件要分所有者和所属组呢?
    是为了分配权限的时候,指定权限方便分配。

  • 第五列:文件大小。默认单位是字节(byte)。

  • 第六列:文件修改时间。
    文件状态修改时间(访问时间)或文件数据修改时间都会更改这个时间,哪个时间最后,显示哪个时间。注意这个时间不是文件的创建时间。

  • 第七列:文件名。

提示:

Linux系统中,以.开头的文件,都是隐藏文件。用ls -a命令查看。
Linux系统中,所有目录都有两个隐藏目录。.代表当前目录,..代表上级目录

3. 目录相关的命令

3.1 ls 命令

ls是最常见的目录操作命令,主要作用是显示目录下的内容。

* 命令名称:ls
* 英文原意:list
* 所在路径:/bin/ls
* 执行权限:所有用户
* 功能描述:显示目录下的内容
[root@localhost ~] # ls [选项] [文件名或目录名]

选项:
  -a:显示所有文件
  --color=[when]:支持颜色输出,when的值默认是always(总显示颜色),也可以是never(从不显示颜色)和auto(自动)
  	**ls --color=auto**
  -d:显示目录信息,而不是目录下的文件
  -h:人性化显示,按照我们习惯的单位显示文件大小
  -i:显示文件的i节点号。理论上i节点号不重叠。
  -l:长格式显示(long list)

以上是ls命令,比较常用的选项。

用法演示

ubuntu@ubuntu-HP-Z4-G4-Workstation:~$ ls -l
总用量 52
-rw-r--r-- 1 ubuntu ubuntu 8980 12月 20 16:37 examples.desktop
drwxrwxr-x 9 ubuntu ubuntu 4096 3月  14 16:15 qiao
drwx------ 3 ubuntu ubuntu 4096 2月  23 19:16 snap
drwxr-xr-x 3 ubuntu ubuntu 4096 12月 24 14:05 公共的
drwxr-xr-x 2 ubuntu ubuntu 4096 12月 20 16:44 模板
drwxr-xr-x 2 ubuntu ubuntu 4096 12月 20 16:44 视频
drwxr-xr-x 2 ubuntu ubuntu 4096 3月   1 10:31 图片
drwxr-xr-x 2 ubuntu ubuntu 4096 12月 20 16:44 文档
drwxr-xr-x 7 ubuntu ubuntu 4096 3月  14 15:43 下载
drwxr-xr-x 2 ubuntu ubuntu 4096 12月 20 16:44 音乐
drwxr-xr-x 2 ubuntu ubuntu 4096 1月  21 15:06 桌面

3.2 cd 命令

cd是切换用户所在目录的命令,这个命令的基本信息如下

* 命令名称:cd
* 英文原意:change directory
* 所在路径:Shell内置命令
* 执行权限:所有用户
* 功能描述:切换所在目录

(1)绝对路径和相对路径

  • 绝对路径:以根目录为参照物,从根目录开始,一级一级进入目录。
  • 相对路径:以当前目录作为参照物,进行目录查找。
  • 路径的最后一个/,表示路径下,有也可以,没有也行。

(2)cd命令的简化用法

特殊符号 作用
~ 直接回车 代表用户的家目录
- 代表上次所在目录
. 代表当前目录
.. 代表上级目录

3.3 pwd 命令

pwd是查询所在目录位置的命令,基本信息如下:

* 命令名称:pwd
* 英文原意:print name of current/working directory
* 所在路径:/bin/pwd
* 执行权限:所有用户
* 功能描述:查询所在的工作目录位置
ubuntu@ubuntu-HP-Z4-G4-Workstation:~$ pwd
/home/ubuntu

3.4 mkdir 命令

mkdir是创建目录的命令,基本信息如下:

* 命令名称:mkdir
* 英文原意:make directories
* 所在路径:/bin/mkdir
* 执行权限:所有用户
* 功能描述:创建空目录

mkdir命令格式如下:

ubuntu@ubuntu-HP-Z4-G4-Workstation:~$ mkdir [选项] 目录名

选项:
	-p:递归建立所需目录

例如:创建一个目录

ubuntu@ubuntu-HP-Z4-G4-Workstation:~$ mkdir abc
ubuntu@ubuntu-HP-Z4-G4-Workstation:~$ ll
总用量 40
drwxrwxr-x  2 ubuntu ubuntu  4096 3月  15 11:14 abc/

同时创建多级目录,示例如下:

ubuntu@ubuntu-HP-Z4-G4-Workstation:~$ mkdir 123/456/789
mkdir: 无法创建目录"123/456/789": 没有那个文件或目录
ubuntu@ubuntu-HP-Z4-G4-Workstation:~$ mkdir -p 123/456/789
ubuntu@ubuntu-HP-Z4-G4-Workstation:~$

提示: linux不允许在一个文件夹内出现同名的目录和文件

ubuntu@ubuntu-HP-Z4-G4-Workstation:~$ ls
123  abc
ubuntu@ubuntu-HP-Z4-G4-Workstation:~$ mkdir 123
mkdir: 无法创建目录"123": 文件已存在

3.5 rmdir 命令

既然有建立目录的命令,就一定会有删除目录的命令rmdir,基本信息如下:

* 命令名称:rmdir
* 英文原意:remove empty directories
* 所在路径:/bin/rmdir
* 执行权限:所有用户
* 功能描述:删除空目录
命令格式
ubuntu@ubuntu-HP-Z4-G4-Workstation:~$ rmdir [选项] 目录名

练习:
ubuntu@ubuntu-HP-Z4-G4-Workstation:~$ rmdir 123
rmdir: 删除 "123" 失败: 目录非空

提示:

rmdir命令的作用十分有限,因为只能删除空目录,所以一旦目录中有内容,就会报错

这个命令比较“笨”,所有我们不太常用。后续我们不论是删除的是文件还是目录,都会使用rm命令。

4. 文件操作相关的命令

4.1 touch 命令

touch命令是用于创建空文件或修改文件时间,这个命令的基本信息如下。

* 命令名称:touch
* 英文原意:change file timestamps
* 所在路径:/bin/touch
* 执行权限:所有用户
* 功能描述:创建空文件或修改文件时间戳

使用示例

ubuntu@ubuntu-HP-Z4-G4-Workstation:~$ touch 1.txt
ubuntu@ubuntu-HP-Z4-G4-Workstation:~$ ll
总用量 44
-rw-rw-r--  1 ubuntu ubuntu     0 3月  15 19:10 1.txt   ⭐️

touch是摸的意思,如果没有这个文件,摸一下就有了,如果有这个文件,摸一下,最后一次的访问时间就变更了

ubuntu@ubuntu-HP-Z4-G4-Workstation:~$ touch 1.txt
ubuntu@ubuntu-HP-Z4-G4-Workstation:~$ ll
总用量 44
-rw-rw-r--  1 ubuntu ubuntu     0 3月  15 19:11 1.txt   ⭐️

4.2 stat 命令

stat是查看文件详细信息的命令,而且可以看到文件的三个时间,具体信息如下。

* 命令名称:stat
* 英文原意:display file or file system status
* 所在路径:/usr/bin/stat
* 执行权限:所有用户
* 功能描述:显示文件或文件系统的详细信息

示例:

ubuntu@ubuntu-HP-Z4-G4-Workstation:~$ stat 1.txt
  文件:1.txt
  大小:0         	块:0          IO 块:4096   普通空文件
设备:802h/2050d	Inode:10757125    硬链接:1
权限:(0664/-rw-rw-r--)  Uid:( 1000/  ubuntu)   Gid:( 1000/  ubuntu)
最近访问:2022-03-15 19:11:54.039112490 +0800
最近更改:2022-03-15 19:11:54.039112490 +0800
最近改动:2022-03-15 19:11:54.039112490 +0800
创建时间:-

提示:

Linux系统中文件是没有创建时间的

状态修改指的是修改权限,修改所属组等

4.3 cat命令

cat命令是用来查看文件内容的,这个命令的其基本信息如下。

* 命令名称:cat
* 英文原意:concatenate files and print on the standard output
* 所在路径:/bin/cat
* 执行权限:所有用户
* 功能描述:合并文件并打印输出到标准输出

cat命令格式:

[root@localhost ~] # cat [选项] 文件名

选项:
  -A:相当于-vET选项的整合,用于列出所有隐藏符号
  -E:列出每行结尾的回车符$
  -n:显示行号
  -T:把Tab键用^I显示出来
  -v:列出特殊字符

说明一下 -A 选项的使用:

ubuntu@ubuntu-HP-Z4-G4-Workstation:~$ cat 1.txt
111111111111
	222222222222222222
3333333333333333333

ubuntu@ubuntu-HP-Z4-G4-Workstation:~$ cat -A 1.txt
111111111111$
^I222222222222222222$																	⭐️注意$,^I
3333333333333333333$

注意 -A就是显示隐藏符号的

回车符用$表示

Tab键用^I来表示

cat 这个命令方便用于查看小文件,因为他是一次性显示文件中的所有内容。如果很大的文件,cat命令只能显示文件的最后一部分。虽然可以向上翻阅,但是显示还是由有限制的,查看大文件不是很方便,用下面的 more 命令更方便

4.4 more 命令

more是分屏显示文件的命令,其基本信息如下

* 命令名称:more
* 英文原意:file perusal filter for crt viewin
* 所在路径:/bin/more
* 执行权限:所有用户
* 功能描述:分屏显示文件内容

more命令比较简单,一般也不用什么选项,命令会打开一个交互界面,可以识别一下交互命令。

常用的交互命令如下:

  • 空格键:向下翻页
  • b: 向上翻页
  • 回车键:向下滚动一行
  • /字符串:搜索指定的字符串
  • q: 退出

4.5 less 命令

less命令和more命令类似,只是more是分屏显示命令,而less是分行显示命令,其基本信息如下:

* 命令名称:less
* 英文原意:opposite of more
* 所在路径:/usr/bin/less
* 执行权限:所有用户
* 功能描述:分行显示文件内容

提示:

less是分行显示,通过上下箭头翻阅,按 q: 退出

cat more less 这三个都是查看的命令,按照自己的习惯来咯

4.6 head 命令

head 是用来显示文件开头的命令,其基本信息如下:

* 命令名称:head
* 英文原意:output the first part of files
* 所在路径:/usr/bin/head
* 执行权限:所有用户
* 功能描述:显示文件开头的内容
ubuntu@ubuntu-HP-Z4-G4-Workstation:~$ head [选项] 文件名

选项:
	-q:隐藏文件名
	-v:显示文件名
	-c<字节>:显示字节数
	-n<行数>:显示的行数

4.7 tail命令

既然有显示文件开头的命令,就会有显示文件结尾的tail命令,其基本信息如下:

* 命令名称:tail
* 英文原意:output the last part of files
* 所在路径:/usr/bin/tail
* 执行权限:所有用户
* 功能描述:显示文件结尾的内容

tail命令格式

ubuntu@ubuntu-HP-Z4-G4-Workstation:~$ head [选项] 文件名

[选项]
  -f 循环读取
  -q 不显示处理信息
  -v 显示详细的处理信息
  -c<数目> 显示的字节数
  -n<行数> 显示文件的尾部 n 行内容
  --pid=PID 与-f合用,表示在进程ID,PID死掉之后结束
  -q, --quiet, --silent 从不输出给出文件名的首部
  -s, --sleep-interval=S 与-f合用,表示在每次反复的间隔休眠S秒

提示:

  • head 命令和tail命令,默认分别显示文件的前10行和最后10行

    如果需要显示其他行数的内容可通过head -n 20/-20 1.txt,进行查看

  • -f:监听文件的新增内容说明:

    通过head -f 1.txt监听一个文件,如果另外其他的终端修改或添加内容,该终端就会同步到

    退出监听状态用:ctrl + c

5. 目录和文件都能操作的命令

5.1 rm 命令

rm是强大的删除的命令,不仅可以删除文件,也可以删除目录。这个命令的基本信息如下。

* 命令名称:rm
* 英文原意:remove files or directories
* 所在路径:/bin/rm
* 执行权限:所有用户
* 功能描述:删除文件或目录

rm命令格式

ubuntu@ubuntu-HP-Z4-G4-Workstation:~$ rm [选项] 文件或目录

选项:
  -f:强制删除(force)
  -r:递归删除,可以删除目录(recursive)
  -i:交互删除,在删除之前会询问用户(如果不添-f参数,rm命令默认添加-i参数)

提示:

一般使用rm的时候,搭配 -rf 一旦被删除就没有了,切记

5.2 cp 命令

cp是用于复制的命令,其基本信息如下:

* 命令名称:cp
* 英文原意:copy file and directories
* 所在路径:/bin/cp
* 执行权限:所有用户
* 功能描述:复制文件或目录
ubuntu@ubuntu-HP-Z4-G4-Workstation:~$ cp [选项] 源文件 目标文件

选项:
  -a:相当于-dpr选项的集合,这几个选项我们一一介绍
  -d:如果源文件为软链接(对硬链接无效),则复制出的目标文件也为软链接
  -i:询问,如果目标文件已经存在,则会询问是否覆盖
  -p:复制后目标文件保留源文件的属性(包括所有者、所属组、权限和时间)
  -r:递归复制,用于复制目录

总结:只要加了-a选择,复制的目标文件或目录,和源文件或源目录,就会一模一样。

示例

buntu@ubuntu-HP-Z4-G4-Workstation:~$ ls
1.txt             qiao 

ubuntu@ubuntu-HP-Z4-G4-Workstation:~$ cp 1.txt qiao/         ⭐️ 如果后边路径不加文件名,就是原名复制

ubuntu@ubuntu-HP-Z4-G4-Workstation:~$ cd qiao/
ubuntu@ubuntu-HP-Z4-G4-Workstation:~/qiao$ ls
1.txt      

ubuntu@ubuntu-HP-Z4-G4-Workstation:~/qiao$ cd ..
ubuntu@ubuntu-HP-Z4-G4-Workstation:~$ cp 1.txt qiao/2.txt     ⭐️ 如果后边路径加文件名,就是改名复制
ubuntu@ubuntu-HP-Z4-G4-Workstation:~$ cd qiao/

ubuntu@ubuntu-HP-Z4-G4-Workstation:~/qiao$ ls
1.txt 2.txt

5.3 mv 命令

mv是用来剪切的命令,其基本信息如下

* 命令名称:mv
* 英文原意:move(rename) files
* 所在路径:/bin/mv
* 执行权限:所有用户
* 功能描述:移动文件或目录
ubuntu@ubuntu-HP-Z4-G4-Workstation:~$ mv [选项] 源文件 目标文件

选项:
  -f:强制覆盖,如果目标文件已经存在,则不询问,直接强制覆盖
  -i:交互移动,如果目标文件已经存在,则询问用户是否覆盖(默认选项)
  -v:显示详细信息

[root@192 ~]# mv abc /tmp/  剪切
[root@192 tmp]# mv abc bef  重命名
[root@192 tmp]# mv bef /root/abc  剪切+重命名

示例

  • 剪切 mv 1.txt qiao/
ubuntu@ubuntu-HP-Z4-G4-Workstation:~$ mv 1.txt qiao/ ⭐️
ubuntu@ubuntu-HP-Z4-G4-Workstation:~$ ls
ubuntu@ubuntu-HP-Z4-G4-Workstation:~$
  • 重命名 mv 1.txt 11.log
ubuntu@ubuntu-HP-Z4-G4-Workstation:~/qiao$ ls
1.txt
ubuntu@ubuntu-HP-Z4-G4-Workstation:~/qiao$ mv 1.txt 11.log ⭐️
ubuntu@ubuntu-HP-Z4-G4-Workstation:~/qiao$ ls
11.log
ubuntu@ubuntu-HP-Z4-G4-Workstation:~/qiao$
  • 剪切+重命名 mv 11.log xx/1.txt
ubuntu@ubuntu-HP-Z4-G4-Workstation:~/qiao$ mkdir xx
ubuntu@ubuntu-HP-Z4-G4-Workstation:~/qiao$ ls
11.log   xx
ubuntu@ubuntu-HP-Z4-G4-Workstation:~/qiao$ mv 11.log xx/1.txt ⭐️

ubuntu@ubuntu-HP-Z4-G4-Workstation:~/qiao$ cd xx
ubuntu@ubuntu-HP-Z4-G4-Workstation:~/qiao/xx$ ls
1.txt
ubuntu@ubuntu-HP-Z4-G4-Workstation:~/qiao/xx$
这篇关于Linux-1. 基本命令的基本格式的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!