Linux基本命令总结(一)

Ctrl+U 组合键:快速删除当前光标处之前的所有字符内容。

Ctrl+K 组合键:快速删除从当前光标处到行尾的所有字符内容。

Ctrl+L 组合键:快速清空当前屏幕中的显示内容,只在左上角显示命令提示符。

Ctrl+C 组合键:取消当前命令行的编辑,并切换为新的一行命令提示符。

查看及切换目录

1.pwd 命令 ——查看当前的工作目录

pwd 命令用于显示用户当前所在的工作目录位置,工作目录是用户操作文件或其他子目

录的默认位置起点。使用 pwd 命令可以不添加任何选项或参数。

例如,root 用户在/root目录中执行 pwd 命令时若输出信息为“/root”,则表示当前的工作目录位于/root,具体操

作如下:

[root@localhost ~]# pwd

/root

2.cd 命令 —— 切换工作目录

cd 命令用于将用户的工作目录更改到其他位置,通常使用需要切换到的目标位置(文

件夹路径)作为参数。若不指定目标位置,默认将切换到当前用户的宿主目录(家目录),

宿主目录是 Linux 用户登录系统后默认的工作目录。

例如,以下操作将把工作目录更改为/boot/grub,并执行 pwd 命令确认当前所处位置。

[root@localhost ~]# cd /boot/grub

[root@localhost grub]# pwd

/boot/grub

在 Linux 操作系统中表示某个目录(或文件)的位置时,根据其参照的起始目录不同,

可以使用两种不同的形式,分别称为绝对路径和相对路径。

绝对路径:这种方式以根目录“/”作为起点,如“/boot/grub”表示根目录下 boot

子目录中的 grub 目录。若要确切表明 grub 是一个目录(而不是一个文件),可以

在最后也加上一个目录分隔符,如表示为“/boot/grub/”。因为 Linux 操作系统中

的根目录只有一个,所以不管当前处于哪个目录中,使用绝对路径都可以非常准确

地表示一个目录(或文件)所在的位置。但是如果路径较长,输入的时候会比较烦

琐。

相对路径:这种方式一般以当前工作目录作为起点,在开头不使用“/”符号,因

此使用的时候更加简短、便捷。相对路径主要包括如下几种形式:

直接使用目录名或文件名表示当前工作目录中的子目录、文件的位置。例如,

“grub.conf”可表示当前目录下的 grub.conf 文件。

使用一个点号“.”开头可明确表示以当前的工作目录作为起点。例如,

“./grub.conf”也可表示当前目录下的 grub.conf 文件。

使用两个点号“..”开头表示以当前目录的上一级目录(父目录)作为起点。

例 如 , 若 当 前 处 于 /boot/grub/ 目 录 中 , 则 “ ../vmlinuz ”等同于

“/boot/vmlinuz”。

使用“~用户名”的形式开头表示以指定用户的宿主目录作为起点,省略用户

名时默认为当前用户。例如,“~teacher”表示 teacher 用户的宿主目录,而

“~”可表示当前用户的宿主目录。

相比较而言,使用相对路径表示目录(文件)的路径形式灵活多变,通常用于表示当前

目录“附近”的目录(文件)位置;而绝对路径常用来表示 Linux 操作系统中目录结构相对

稳定(不经常改变)的目录(文件)位置。因此在使用相对路径或绝对路径时,应根据实际

情况进行选择。

执行 cd 命令时,还可以使用一个特殊的目录参数“-”(减号)表示上一次执行 cd 命令

之前所处的目录。例如,以下操作先通过执行“cd ~”命令(与单独执行“cd”命令效果相

同)切换到当前用户的宿主目录,然后执行“cd -”命令返回原来所在的目录位置。

[root@localhost grub]# pwd

/boot/grub

[root@localhost grub]# cd ~

[root@localhost ~]# pwd

/root

[root@localhost ~]# cd -

/boot/grub

3.ls 命令——列表(List)显示目录内容

ls 命令主要用于显示目录中的内容,包括子目录和文件的相关属性信息等。

-l:以长格式(Long)显示文件和目录的列表,包括权限、大小、最后更新时间等

详细信息。不使用-l 选项时,ls 命令默认以短格式显示目录名或文件名信息。

-a:显示所有(All)子目录和文件的信息,包括名称以点号“.”开头的隐藏目录

和隐藏文件。

-A:与-a 选项的作用基本类似,但有两个特殊隐藏目录不会显示,即表示当前目

录的“.”和表示父目录的“..”。

-d:显示目录(Directory)本身的属性,而不是显示目录中的内容。

-h:以更人性化(Human)的方式显示目录或文件的大小,默认的大小单位为字节

(B),使用-h 选项后将显示为 KB、MB 等单位。此选项需要结合-l 选项一起使用。

-R:以递归(Recursive)的方式显示指定目录及其子目录中的所有内容。

--color:在字符模式中以颜色区分不同的文件,如果使用“--color=tty”,则表示使用终端预定义的颜色方案。通常情况下,

深蓝色:表示目录

白色:表示一般文件

绿色:表示可执行的文件

yellow色:表示设备文件

红色:表示压缩文件

“ls -ld”命令可以只显示当前目录的详细属性,而不显示目录下的内容,如以下操作:

[root@localhost grub]# ls -ld

drwxr-xr-x. 2 root root 27 3 月 7 16:55 .

“-lh”选项可以以更易读的长格式显示

[root@localhost grub]# ls -lh /etc/yum.conf /boot/vmlinuz-3.10.0-514.el7.x86_64

-rwxr-xr-x. 1 root root 5.2M 11 月 23 00:53 /boot/vmlinuz-3.10.0-514.el7.x86_64

-rw-r--r--. 1 root root 970 11 月 15 23:30 /etc/yum.conf

问号“?”:可以匹配文件名中的一个未知字符

星号“*”可以匹配文件名中的任意多个字符

[root@localhost grub]# ls -lh /etc/ns*.conf

-rw-r--r--. 1 root root 1.7K 3 月 7 17:10 /etc/nsswitch.conf

对于经常使用的比较长的命令行,可以通过 alias 别名机制进行简化,以提高使用效率

例如,执行“alias myls =' ls – alh'”命令可以定义一个名为 myls 的命令别

名,以后再执行“myls”命令时即等同于执行“ls -alh”命令。

4.du 命令——统计目录及文件的空间占用情况

du 命令常用的几个选项如下。

-a:统计磁盘空间占用时包括所有的文件,而不仅仅只统计目录。

-h:以更人性化的方式(默认以 KB 计数,但不显示单位)显示出统计结果,使用

-h 选项后将显示出 KB、MB 等单位。

-s:只统计每个参数所占用空间总的(Summary)大小,而不是统计每个子目录、

文件的大小。

“-sh”统计一个文件夹内所有文件总共占用的空间大小

[root@localhost ~]# du -sh /var/log/

12M /var/log/

“-ah”分别统计多个文件所占用的空间大小

[root@localhost ~]# du -ah /boot/

„„//省略部分内容

8.1M /boot/grub2

4.0K /boot/.vmlinuz-3.10.0-514.el7.x86_64.hmac

3.0M /boot/System.map-3.10.0-514.el7.x86_64

136K /boot/config-3.10.0-514.el7.x86_64

272K /boot/symvers-3.10.0-514.el7.x86_64.gz

5.2M /boot/vmlinuz-3.10.0-514.el7.x86_64

9.8M /boot/initrd-plymouth.img

62M /boot/initramfs-0-rescue-8d265977c0c0459d98aff332d2544503.img

5.2M /boot/vmlinuz-0-rescue-8d265977c0c0459d98aff332d2544503

30M /boot/initramfs-3.10.0-514.el7.x86_64.img

123M /boot/

创建目录和文件

1.mkdir 命令——创建新的目录(Make Directory)

mkdir 命令用于创建新的空目录,使用要创建的目录位置作为参数(可以有多个)。例

如,执行“mkdir public_html”命令将在当前目录下创建名为 public_html 的子目录,具

体操作如下:

[root@localhost ~]# mkdir public_html

[root@localhost ~]# ls -d public_html

public_html

“-p”一次性创建嵌套的多层目录,否则只能在已经存在的目录中创建一层子目录。

[root@localhost ~]# mkdir -p /multimedia/movie/cartoon

[root@localhost ~]# ls -R /multimedia

/multimedia:

movie

/multimedia/movie:

cartoon

/multimedia/movie/cartoon:

HuaMulan.rmvb NeZhaNaoHai.mp4

2.touch ——创建空文件

touch 命令本来用于更新文件的时间标记,但在实际使用中经常用于创建新的测试文件。

该命令使用文件名作为参数,可以同时创建多个文件。当目标文件已存在时,将更新该文件

的时间标记,否则将创建指定名称的空文件。例如,以下操作将在/multimedia/movie/cartoon 目

录中创建两个空文件,文件名分别为 HuaMuLan.rmvb 和 NeZhaNaoHai.mp4。

[root@localhost ~]# cd /multimedia/movie/cartoon

[root@localhost cartoon]# touch HuaMulan.rmvb NeZhaNaoHai.mp4

[root@localhost cartoon]# ls -lh

总用量 0

-rw-r--r--. 1 root root 0 4 月 6 02:00 HuaMulan.rmvb

-rw-r--r--. 1 root root 0 4 月 6 02:00 NeZhaNaoHai.mp4

3.ln 命令——创建链接(Link)文件

ln 命令用于为文件或目录建立链接文件(类似于 Windows 系统中的快捷方式),提高用

户定位文件或目录的效率。链接文件分为软链接和硬链接两种类型,其中软链接又称为符号

链接。无论是访问软链接还是硬链接,与直接访问原始文件的效果基本相同。

软链接与硬链接的区别主要在于,删除原始文件后,软链接将失效,但硬链接仍然可用;

软链接适用于文件或目录,但硬链接只可用于文件,不能为目录建立硬链接;软链接与原始

文件可以位于不同的文件系统中,但硬链接必须与原始文件在同一个文件系统(如一个

Linux 分区)内。

使用 ln 命令时,默认创建的是硬链接。如果需要创建软链接,必须结合“-s”选项明

确指定。ln 命令的基本使用格式如下:

ln [-s] 源文件或目录„ 链接文件或目标位置

当目标位置是一个已经存在的目录时,新创建的链接文件将保存到该目录中,并使用与

源文件或目录相同的名称。例如,以下操作将为文件/bin/bzip2 创建一个软链接文件

/bin/wx/bzip2(未指定链接名称时,使用与原始文件相同的文件名)。

[root@localhost ~]# mkdir /bin/wx

[root@localhost ~]# ln -s /bin/bzip2 /bin/wx/

[root@localhost ~]# ls -lh /bin/wx/bzip2

lrwxrwxrwx. 1 root root 10 4 月 6 02:10 /bin/wx/bzip2 -> /bin/bzip2

1.2.3 复制、删除、移动目录和文件

1.cp——复制(Copy)文件或目录

-f:覆盖目标同名文件或目录时不进行提醒,而直接强制(Force)复制。

-i:覆盖目标同名文件或目录时提醒用户确认(Interactive,交互式)。

-p:复制时保持(Preserve)源文件的权限、属主及时间标记等属性不变。

-r:复制目录时必须使用此选项,表示递归复制所有文件及子目录。第 14 页 共 18 页

2.rm 命令——删除(Remove)文件或目录

-f:删除文件或目录时不进行提醒,而直接强制删除。

-i:删除文件或目录时提醒用户确认。

-r:删除目录时必须使用此选项,表示递归删除整个目录树(应谨慎使用)。

3.mv 命令——移动(Move)文件或目录

例如,以下操作将把当前目录中的 mytouch 程序文件改名为 mkfile。

[root@localhost ~]# mv mytouch mkfile

[root@localhost ~]# ls -lh mytouch mkfile

ls: 无法访问 mytouch: 没有那个文件或目录

-rwxr-xr-x. 1 root root 62K 4 月 11 10:42 mkfile

例如,以下操作将把 mkfile 文件移动到 public_html 目录(已经存在)中,文件名仍然是 mkfile。

[root@localhost ~]# mv mkfile public_html/

[root@localhost ~]# ls -l public_html/mkfile

-rwxr-xr-x. 1 root root 62488 4 月 11 10:42 public_html/mkfile

1.2.4 查找目录和文件

1.which 命令——查找用户所执行的命令文件存放的目录

例如,执行“which ls”命令后,可以找到名为 ls 的、位于/usr/bin/ls 的命令程序文件,具体操作如下:

[root@localhost ~]# echo $PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

[root@localhost ~]# which ls

alias ls='ls --color=auto'

/usr/bin/ls

例如,查找内部命令 history 的位置时,会提示在搜索路径中没有这个程序文件,具体操作如下:

[root@localhost ~]# which history

/usr/bin/which: no history in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr

/bin:/root/bin)

2.find 命令——查找文件或目录

find 命令的基本使用格式如下:

find [查找范围] [查找条件表达式]

按名称查找:关键字为“-name”,根据目标文件的名称进行查找,允许使用“*”

及“?”通配符。

按文件大小查找:关键字为“-size”,根据目标文件的大小进行查找,一般使用“+”

和“-”号设置超过或小于指定的大小作为查找条件。常用的容量单位包括 kB(注

意 k 是小写)、MB、GB。

按文件属主查找:关键字为“-user”,根据文件是否属于目标用户进行查找。

按文件类型查找:关键字为“-type”,根据文件的类型进行查找,这里的类型指的

是普通文件(f)、目录(d)、块设备文件(b)、字符设备文件(c)等。块设备指

的是成块读取数据的设备(如硬盘、内存等),而字符设备指的是按单个字符读取

数据的设备(如键盘、鼠标等)。 **