初学者必学的20个Linux基础命令

电子说

1.3w人已加入

描述

 

 

 

目录

  1. cd
  2. pwd
  3. ls
  4. cp
  5. mv
  6. rm
  7. mkdir
  8. cat
  9. less
  10. head
  11. tail
  12. grep
  13. man
  14. chown
  15. chmod
  16. top
  17. find
  18. df
  19. du
  20. ps

!! Conclusion

在处理 Linux 时,您需要使用一个 shell——一个可以让您访问操作系统的接口。命令需要作为输入来通知或指导计算机程序执行特定操作。虽然大多数Linux 发行版都是用户友好的,并且带有易于使用的图形界面,但了解如何使用命令行非常有用。

那么让我们通过示例来学习必须知道的基本 Linux 命令。

 

1.cd

cd(Change Directory)命令是Linux中最重要、使用最广泛的命令之一。它用于更改当前工作目录。

从当前目录更改为/tmp.

cd /tmp

切换回您之前工作的上一个目录。

cd -

将当前目录更改为父目录。

cd ..

从任何地方移动到用户主目录。

cd

 

 

2.pwd

pwd(打印工作目录)如名称所述,打印当前/当前工作目录的名称。它打印路径,从 root 开始/。

pwd
/home/linuxiac

 

 

3.ls

ls(列出文件和目录) 是任何 Linux 用户都应该知道的基本命令之一。它列出了目录的内容,例如文件和文件夹。

ls不带参数运行将列出当前目录的内容。

ls
psforevermore.txt  pulse-linux-9.1r2.0-x64.rpm  website-logo.jpg

使用 -l (长格式)选项将显示当前目录内容的长列表。该命令不仅会打印文件名,还会打印一些属性,例如:

  • 权限
  • 所有者
  • 组所有者
  • 文件的大小(以字节为单位)
  • 修改文件的时间和日期。
ls -l
total 22968
-rw-r--r-- 1 linuxiac linuxiac       19 Jul 27 13:53 psforevermore.txt
-rw-r--r-- 1 linuxiac linuxiac 23271352 Jul 28 14:57 pulse-linux-9.1r2.0-x64.rpm
-rw-r--r-- 1 linuxiac linuxiac   240104 Jul 28 15:12 website-logo.jpg

要列出特定目录的内容,请参阅以下命令。

ls -l /home/linuxiac/
total 22968
-rw-r--r-- 1 linuxiac linuxiac       19 Jul 27 13:53 psforevermore.txt
-rw-r--r-- 1 linuxiac linuxiac 23271352 Jul 28 14:57 pulse-linux-9.1r2.0-x64.rpm
-rw-r--r-- 1 linuxiac linuxiac   240104 Jul 28 15:12 网络工程师阿龙.jpg

使用该 -h 选项, ls 将以人类可读的格式显示文件大小。此选项仅在与-l 选项组合使用时才有意义 。

ls -lh
total 23M
-rw-r--r-- 1 linuxiac linuxiac   19 Jul 27 13:53 psforevermore.txt
-rw-r--r-- 1 linuxiac linuxiac  23M Jul 27 14:57 pulse-linux-9.1r2.0-x64.rpm
-rw-r--r-- 1 linuxiac linuxiac 235K Jul 27 15:12 website-logo.jpg

在 Linux 中,文件开头 . 是隐藏文件。要在 ls 命令上显示它,我们可以使用 -a 参数。

ls -a
.monitoring  psforevermore.txt  pulse-linux-9.1r2.0-x64.rpm  .usage.log  website-logo.jpg

如果我们只想列出目录条目,我们可以使用 -d 参数。

ls -d /home/linuxiac/
/home/linuxiac/

 

 

4.cp

cp(Copy)是Linux中用于复制文件和目录的命令。要使用cp 命令复制文件,请传递要复制的文件 的名称,然后是目标。

例如,通过运行下面提到的命令将一个文件复制 website-logo.jpg 到一个/tmp/目录。

cp website-logo.jpg /tmp/

如果要以不同的名称复制文件,则需要指定所需的文件名。如果要以不同的名称复制文件,则需要指定所需的文件名。

cp website-logo.jpg /tmp/new-logo.jpg

要复制多个文件,请将文件名和目标目录传递给 cp 命令。

cp website-logo.jpg psforevermore.txt images/

要复制目录,包括其所有文件和子目录,请使用 -r (递归)选项。

例如,我们将目录复制 images 到 images_bckp.

cp -r images/ images_bckp/

 

 

5.mv

mv (Move)用于将一个或多个文件或目录从一处移动到另一处。除了移动文件,它还可以重命名文件或目录。

例如,要将一个从当前目录命名的文件移动到目录,命令是:website-logo.jpgimages

mv website-logo.jpg images/

如果只想重命名一个名为to的文件,可以通过以下方式使用该命令:website-logo.jpgnew-logo.jpgmv

mv website-logo.jpg new-logo.jpg

就像重命名文件一样,您可以使用mv命令重命名目录。

例如,要将名为 的目录重命名images为images_bckp,命令为:

mv images images_bckp

 

 

6.rm

rm (Remove)是一个用于删除文件和目录的命令行实用程序。要删除单个文件,请使用rm 后跟文件名作为参数的 命令:

rm website-logo.jpg

默认情况下, rm 不删除目录。如果出现 -r(递归)选项,rm 将删除任何匹配的目录及其内容。

rm -r images/

如果给定目录或目录中的文件被写保护,该 rm 命令将提示您进行确认。

要在images没有提示的情况下删除命名的目录,请使用以下 -f 选项:

rm -rf images/

注意:执行rm -rf 命令时要小心 。一点错别字或无知可能会导致不可恢复的系统损坏。 

 

 

7.mkdir

mkdir (Make Directory) 是用于创建目录的基本 Linux 命令。虽然该rm命令允许您删除目录,但它mkdir 是允许您创建目录的 命令。

创建目录非常简单。您需要做的就是将要创建的目录的名称传递给mkdir命令。

要images 在当前目录中创建一个新目录 ,命令是:

mkdir images

使用 using 构建具有多个子目录的结构 mkdir 需要添加该 -p 选项。该 -p 通知mkdir还创造parrent目录为好。

mkdir -p images/upload/new

 

 

8.cat

cat (Concatenate)是一种命令,用于显示一个或多个文件的内容,而无需打开文件进行编辑。它可以读取、连接文件内容并将其写入标准输出。该cat 命令最基本和最常见的用法 是读取文件的内容。

例如,以下命令将psforevermore.txt 在终端上显示文件的内容 :

cat psforevermore.txt
欢迎大家关注公众号:网络工程师阿龙
You're the color of my life,
You're the reason why I'm here to say "Alright".

 

 

9.less

less命令用于在终端中一次显示一页的文件内容或命令输出。它对于查看大文件的内容或产生多行输出的命令的结果最有用。

该less命令的语法非常简单。例如,如果你想读取psforevermore.txt文件的内容,命令是:

less psforevermore.txt

less 的输出被分成几页。您只会看到填满终端屏幕的文本。您可以使用向上和向下箭头键逐行移动。如果要逐页移动,使用space键移动到下一页,使用键b返回上一页。

只需q在任何给定点按下即可退出less。

 

 

10.head

head 命令用于输出通过标准输入提供给它的文件的第一部分。它将结果写入标准输出。默认情况下, head 返回给定的每个文件的前十行。

要查看文件的前十行,请将文件名传递给 head 命令。

head psforevermore.txt

要设置要显示的行数,请 head 通过 -n 选项后跟要显示的行数。

head -n 2 psforevermore.txt

 

 

11.tail

tail是head 命令的补充 。它打印给定输入的最后 N 个数据。默认情况下,该tail命令打印指定文件的最后 10 行。

tail psforevermore.txt

您可以使用该 -n 选项来指定要显示的行数。

tail -n 10 psforevermore.txt

您也可以省略字母 n 并只使用连字符-和数字,它们之间没有空格。

tail -10 psforevermore.txt

 

 

12.grep

grep(全局正则表达式打印)用于搜索指定文件中的字符串。它是 Linux 中最有用的命令之一。

例如,要搜索包含单词的任何行color中的文件名psforevermore.txt,命令将是:

grep color psforevermore.com
You're the color of my life,

由于该grep命令区分大小写,因此最有用的grep搜索运算符之一是 -i。终端不只打印小写结果,而是同时显示大写和小写结果。

grep -i Color psforevermore.txt
You're the color of my life,

要在搜索中包含所有子目录,请将-r (递归)运算符添加 到grep命令中。

下面的示例命令打印目录及其子目录username中所有文件中的word 匹配项/etc。

grep -r username /etc

 

 

13.man

man(手册)允许用户访问命令行实用程序和工具的手册页。它允许用户查看在终端中运行的命令或实用程序的参考手册。

手册页包括命令描述、适用选项、标志、示例和其他信息部分。

在终端窗口中,键入man 要查看的手册页, 后跟 Linux 命令名称。例如:

man telnet

要退出,请按 q。

 

 

14.chown

chown(更改所有者)命令用于更改文件所有者或组。每当您想更改所有权时,您都可以使用chown命令。sudo执行chown命令需要超级用户 ( ) 权限。

更改文件的所有者chown需要您指定新的所有者和文件。

以下命令将文件的所有权 website-logo.jpg 从 linuxiac 更改为 user  john:

chown john website-logo.jpg

要分配文件的新所有者并同时更改其组,请按chown 以下格式运行 命令。例如,要设置john为文件的新所有者和users新组website-logo.jpg:

chown john:users website-logo.jpg

该chown命令允许更改指定目录中所有文件和子目录的所有权。将-R选项添加 到命令中以执行此操作。

在以下示例中,我们将递归更改目录中所有文件和目录的所有者和组images。

chown -R john:users images/

 

 

15.chmod

chmod(更改模式)允许您更改文件的权限。只有 root、文件所有者或具有sudo权限的用户才能更改文件的权限。

引用用于区分权限适用的用户:

  • u(owner) : 文件的所有者。
  • g(group):属于文件组成员的用户。
  • o(others):既不是文件所有者也不是文件组成员的用户。
  • a(all) : 以上三个(同ugo)。

运算符用于指定应如何调整文件的模式:

  • +将指定的模式添加到指定的类。
  • -从指定的类中删除指定的模式。
  • =指定的模式将成为指定类的确切模式。

模式指示要从指定的类中授予或删除哪些权限:

  • r 读取文件。
  • w 写入或删除文件。
  • x 执行文件或在目录的情况下,搜索它。

例如,在以下命令中,将为所有三个级别添加读取权限:用户、组和其他。

chmod a+r website-logo.jpg

删除所有用户的执行权限:

chmod a-x website-logo.jpg

删除除文件所有者之外的所有用户的读、写和执行权限:

chmod og-rwx website-logo.jpg

如果您希望文件的所有者具有读写权限而组和其他用户仅具有读取权限:

chmod u=rw,go=r website-logo.jpg

使用=运算符意味着我们清除所有现有权限,然后设置指定的权限。

您可以使用以下命令为所有人添加执行权限:

chmod a+x website-logo.jpg

要递归操作给定目录下的所有文件和目录,请使用chmod 带有-R(recursive) 选项的 命令 。

例如,在以下命令中,用户可以读取、写入和执行。组成员和其他用户可以读取和执行,但不能写入。这适用于目录下的所有文件和子目录 /tmp/test 。

chmod -R u=rwx,go=rx /tmp/test

 

 

16.top

top允许用户在 Linux 上监控进程和系统资源使用情况。它是系统管理员工具箱中最有用的工具之一,它预装在每个 Linux 发行版中。

您只需要输入以下内容即可启动 top:

top

 

 

17.find

find允许用户根据条件搜索文件和目录。它是 Linux 中最重要和最常用的命令之一。

查找名称website-logo.jpg 在当前工作目录中的所有文件 。

find . -name website-logo.jpg

该 -name 选项区分大小写。如果您不知道要查找的项目的确切大小写,您可以使用-iname 不区分大小写的 选项。

find . -iname website-logo.jpg

查找名称linuxiac 在 / 目录中的所有 目录。

find / -type d -name linuxiac

查找目录中的所有 .php 文件/var/www/html。

find /var/www/html -type f -name "*.php"

 

 

18.df

df (Disk Free)用于显示文件系统的可用磁盘空间量。

要查看磁盘空间使用情况,请运行该 df 命令。这对于发现系统或文件系统上可用的可用空间量非常有用。

df
Filesystem     1K-blocks     Used Available Use% Mounted on
udev             1984900        0   1984900   0% /dev
tmpfs             403004     1472    401532   1% /run
/dev/vda5       30314436 12798764  16057744  45% /
tmpfs            2015016        0   2015016   0% /dev/shm
tmpfs               5120        4      5116   1% /run/lock
/dev/vda1         523248        4    523244   1% /boot/efi

要以人类可读的格式查看磁盘空间,请传递该 -h 选项。这将打印G 千兆字节、 M 兆字节和 B 字节的大小。

df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            1.9G     0  1.9G   0% /dev
tmpfs           394M  1.5M  393M   1% /run
/dev/vda5        29G   13G   16G  45% /
tmpfs           2.0G     0  2.0G   0% /dev/shm
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
/dev/vda1       511M  4.0K  511M   1% /boot/efi

 

 

19.du

du(磁盘使用情况)用于估计给定文件或目录使用的磁盘空间量。

要查找/home/linuxiac 目录树及其每个子目录的磁盘使用情况摘要 ,请输入如下所示的命令。输出将显示/home/linuxiac 目录及其子目录中的磁盘块数 。

du /home/linuxiac
4 /home/linuxiac/Documents
888 /home/linuxiac/.cache/fontconfig
...
8 /home/linuxiac/.ssh
2143400 /home/linuxiac/

如果我们想以人类可读的格式(K、M、G)打印尺寸,请使用-h选项。

du -h /home/linuxiac
4.0K /home/linuxiac/Documents
888K /home/linuxiac/.cache/fontconfig
...
8.0K /home/linuxiac/.ssh
2.1G /home/linuxiac/

要获取目录的总磁盘使用大小的摘要,请使用以下选项-s。

du -sh /home/linuxiac
2.1G /home/linuxiac/

 

 

20.ps

ps(进程状态)命令用于显示系统中当前正在运行的进程。它将显示系统上运行的进程列表,包括进程 ID、当前登录的终端名称、CPU 时间等详细信息。

系统管理员通常将 ps 与a、u、x和w选项一起使用,以便在单个 ps 命令执行中获取所有详细信息。

  • a: 所有其他用户进程。
  • u: 进程的所有者。
  • x: 其他未附加到终端的进程。
  • w: 宽输出。
ps auxw

 

 

结论

基本的 Linux 命令可帮助用户轻松有效地执行任务。虽然您可以使用图形界面执行大多数与系统相关的任务,但命令行可以提高您的工作效率,并能够在更短的时间内完成更多的工作。

审核编辑 :李倩

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分