Linux基础命令(非常详细)

Linux常用命令

  • 1、pwd命令
  • 2、cd命令
  • 3、ls命令
  • 4、cat命令
  • 5、more命令
  • 6、less命令
  • 7、tail命令
  • 8、head命令
  • 9、mkdir命令
  • 10、rmdir命令
  • 11、熟悉使用cp命令
    • (1)cp命令的使用方法
    • (2)使用cp命令的范例
  • 12、mv命令
  • 13、rm命令
  • 14、touch命令
  • 15、clear命令
  • 16、uname命令
  • 17、man命令
  • 18、shutdown命令
  • 19、halt命令
  • 20、reboot命令
  • 21、poweroff命令
  • 22、history命令
  • 23、echo命令
  • 24、Linux命令的特点


1、pwd命令

pwd命令用于显示用户当前所处的目录。如果用户不知道自己当前所处的目录,就必须使用它。例如:

[root@RHEL7-1 etc]# pwd
/etc

2、cd命令

cd命令用来在不同的目录中进行切换。用户在登录系统后,会处于用户的家目录($HOME)中,该目录一般以/home开始,后跟用户名,这个目录就是用户的初始登录目录(root用户的家目录为/root)。如果用户想切换到其他的目录中,就可以使用cd命令,后跟想要切换的目录名。例如:

[root@RHEL7-1 etc]# cd               #改变目录位置至用户登录时的工作目录
[root@RHEL7-1~]# cd dir1             #改变目录位置至当前目录下的dir1子目录下
[root@RHEL7-1dir1]# cd ~             #改变目录位置至用户登录时的工作目录(用户的家目录)
[root@RHEL7-1~]# cd ..               #改变目录位置至当前目录的父目录
[root@RHEL7-1/]# cd                  #改变目录位置至用户登录时的工作目录
[root@RHEL7-1~]# cd ../etc           #改变目录位置至当前目录的父目录下的etc 子目录下
[root@RHEL7-1 etc]# cd/dir1/subdir1  #利用绝对路径表示改变目录到 /dir1/subdir1目录下

3、ls命令

ls命令用来列出文件或目录信息。该命令的语法为
ls [参数] [目录或文件]
ls命令的常用参数选项如下。
-a:显示所有文件,包括以“.”开头的隐藏文件。
-A:显示指定目录下所有的子目录及文件,包括隐藏文件。但不显示“.”和“…”。-c:按文件的修改时间排序。
-C:分成多列显示各行。
-d:如果参数是目录,则只显示其名称而不显示其下的各个文件。往往与“-l”选项一起使用,以得到目录的详细信息。
-l:以长格形式显示文件的详细信息。
-i:在输出的第一列显示文件的i节点号。例如:

[root@RHEL7-1~]#ls        #列出当前目录下的文件及目录
[root@RHEL7-1~]#ls -a     #列出包括以“.”开始的隐藏文件在内的所有文件
[root@RHEL7-1~]#ls -t     #依照文件最后修改时间的顺序列出文件
[root@RHEL7-1~]#ls -F     #列出当前目录下的文件名及其类型
[root@RHEL7-1~]#ls -l     #列出当前目录下所有文件的权限、所有者、文件大小、修改时间及名称
[root@RHEL7-1~]#ls -lg    #同上,并显示出文件的所有者工作组名
[root@RHEL7-1~]#ls -R     #显示出目录下以及其所有子目录的文件名

4、cat命令

cat命令主要用于滚屏显示文件内容或是将多个文件合并成一个文件。
该命令的语法为:
cat [参数] 文件名
cat命令的常用参数选项如下。
-b:对输出内容中的非空行标注行号。
-n:对输出内容中的所有行标注行号。
通常使用cat命令查看文件内容,但是cat命令的输出内容不能够分页显示,要查看超过一屏的文件内容,需要使用more或less等其他命令。如果在cat命令中没有指定参数,则cat会从标准输入(键盘)中获取内容。
例如,要查看/soft/file1文件内容的命令为:

[root@RHEL7-1~]#cat  /soft/file1

利用cat命令还可以合并多个文件。例如,要把file1和file2文件的内容合并为file3,且file2文件的内容在file1文件的内容前面,则命令为:

[root@RHEL7-1~]# cat file2 file1>file3

#如果file3文件存在,则此命令的执行结果会覆盖file3文件中原有内容

[root@RHEL7-1~]# cat file2 file1>file3

#如果file3文件存在,此命令的执行结果将把file2和file1文件的内容附加到file3文件中原有内容的后面。

5、more命令

在使用cat命令时,如果文件太长,用户只能看到文件的最后一部分。这时可以使用more命令,一页一页地分屏显示文件的内容。more命令通常用于分屏显示文件内容。大部分情况下,可以不加任何参数选项执行more命令查看文件内容。执行more命令后,进入more状态,按“Enter”键可以向下移动一行,按“Space”键可以向下移动一页;按“Q”键可以退出more命令。该命令的语法为:
more [参数] 文件名
more命令的常用参数选项如下。
-num:这里的num是一个数字,用来指定分页显示时每页的行数。
+num:指定从文件的第num行开始显示。
例如:
[root@RHEL7-1~]#more file1 #以分页方式查看file1文件的内容
[root@RHEL7-1~]#cat file1 | more #以分页方式查看file1文件的内容

6、less命令

less [选项] 文件名
less 命令的作用和 more 十分类似,都用来浏览文本文件中的内容,不同之处在于,使用 more 命令浏览文件内容时,只能不断向后翻看,而使用 less 命令浏览,既可以向后翻看,也可以向前翻看。

7、tail命令

tail命令用于显示文件的末尾部分,默认情况下,只显示文件的末尾10行内容。该命令的语法为:
tail [参数] 文件名
tail命令的常用参数选项如下。
-n num:显示指定文件的末尾num行。
-c num:显示指定文件的末尾num个字符。
+num:从第num行开始显示指定文件的内容。
例如:
[root@RHEL7-1~]#tail -n 20 /etc/httpd/conf/httpd.conf #显示 httpd.conf文件的末尾20行

8、head命令

head命令用于显示文件的开头部分,默认情况下只显示文件的前10行内容。
该命令的语法为:
head [参数] 文件名
head命令的常用参数选项如下。
-n num:显示指定文件的前num行。
-c num:显示指定文件的前num个字符。
例如:
[root@RHEL7-1~]#head -n 20 /etc/httpd/conf/httpd.conf#显示 httpd.conf文件的前20行。

9、mkdir命令

mkdir命令用于创建一个目录。该命令的语法为
mkdir [参数] 目录名
上述目录名可以为相对路径,也可以为绝对路径。mkdir命令的常用参数选项如下。
-p:在创建目录时,如果父目录不存在,则同时创建该目录及该目录的父目录。例如:
[root@RHEL7-1~]#mkdir dir1 #在当前目录下创建dir1子目录。
[root@RHEL7-1~]#mkdir –pdir2/subdir2#在当前目录的dir2目录中创建subdir2子目录,如果dir2目录不存在,则同时创建。

10、rmdir命令

rmdir命令用于删除空目录。该命令的语法为
rmdir [参数] 目录名
上述目录名可以为相对路径,也可以为绝对路径。但所删除的目录必须为空目录。rmdir命令的常用参数选项如下。
-p:在删除目录时,一同删除父目录,但父目录中必须没有其他目录及文件。
例如:
[root@RHEL7-1~]#rmdir dir1 #在当前目录下删除dir1空子目录
[root@RHEL7-1~]#rmdir -pdir2/subdir2 #/删除当前目录中dir2/subdir2子目录,//删除subdir2目录时,如果dir2目录中无其他目录,则一起删除。

11、熟悉使用cp命令

(1)cp命令的使用方法

cp命令主要用于文件或目录的复制。该命令的语法为
cp [参数] 源文件 目标文件
cp命令的常用参数选项如下。
-a:尽可能将文件状态、权限等属性照原状予以复制。
-f:如果目标文件或目录存在,先删除它们再进行复制(即覆盖),并且不提示用户。
-i:如果目标文件或目录存在,提示是否覆盖已有的文件。
-R:递归复制目录,即包含目录下的各级子目录。

(2)使用cp命令的范例

复制(cp)这个指令是非常重要的,不同身份者执行这个指令会有不同的结果产生,尤其是-a、-p选项,对于不同身份来说,差异非常大。下面的练习中,有的身份为root,有的身份为一般账号(在这里用bobby这个账号),练习时请特别注意身份的差别。
【例】用root身份,将家目录下的.bashrc复制到/tmp下,并更名为bashrc。
[root@RHEL7-1~]# cp ~/.bashrc /tmp/bashrc
[root@RHEL7-1~]# cp –i ~/.bashrc /tmp/bashrc
cp: overwrite /tmp/bashrc’? n 不覆盖,y为覆盖
#重复做两次,由于/tmp下已经存在bashrc了,加上-i选项后,
#则在覆盖前会询问使用者是否确定!可以按下n或者y来二次确认
【例】变换目录到/tmp,并将/var/log/wtmp复制到/tmp且观察属性。
[root@RHEL7-1 tmp]# cp -a /var/log/wtmp wtmp_2
[root@RHEL7-1 tmp]# ls -l /var/log/wtmp wtmp_2

#如果想要将文件的所有特性都一起复制过来该怎么办?可以加上-a,如下所示。
[root@RHEL7-1 tmp]# cp    -a   /var/log/wtmp wtmp_2
[root@RHEL7-1 tmp]# ls -l /var/log/wtmp wtmp_2
-rw-rw-r—1 root utmp 96384 Sep 2411:54/var/log/wtmp
-rw-rw-r—1 root utmp 96384 Sep 2411:54 wtmp_2

由于是root的身份,因此复制过来的文件拥有者与群组就改变成为root所有。由于具有这个特性,所以当我们在进行备份的时候,某些需要特别注意的特殊权限文件。例如,密码文件(/etc/shadow)以及一些配置文件,就不能直接以cp来复制,而必须要加上-a或-p等属性。
注意:如果想要复制文件给其他使用者,也必须要注意文件的权限(包含读、写、执行以及文件拥有者等),否则,其他人还是无法针对你给的文件进行修改。

12、mv命令

mv命令主要用于文件或目录的移动或改名。该命令的语法为
mv [参数] 源文件或目录
目标文件或目录mv命令的常用参数选项如下。
-i:如果目标文件或目录存在,则提示是否覆盖目标文件或目录。
-f:无论目标文件或目录是否存在,直接覆盖目标文件或目录,不提示。
例如:

#将当前目录下的testa文件移动到/usr/目录下,文件名不变
[root@RHEL7-1~]# mv testa /usr/
#将/usr/testa文件移动到根目录下,移动后的文件名为tt
[root@RHEL7-1~]# mv /usr/testa /tt

13、rm命令

rm命令主要用于文件或目录的删除。该命令的语法为
rm [参数] 文件名或目录名
rm命令的常用参数选项如下。
-i:删除文件或目录时提示用户。
-f:删除文件或目录时不提示用户。
-R:递归删除目录,即包含目录下的文件和各级子目录。

14、touch命令

touch命令用于建立文件或更新文件的修改日期。该命令的语法为:
touch [参数] 文件名或目录名
touch命令的常用参数选项如下。
-d yyyymmdd:把文件的存取或修改时间改为yyyy年mm月dd日。
-a:只把文件的存取时间改为当前时间。
-m:只把文件的修改时间改为当前时间。
例如:

[root@RHEL7-1~]# touch aa  
#如果当前目录下存在aa文件,则把aa文件的存取和修改时间改为当前时间
#如果不存在aa文件,则新建aa文件
[root@RHEL7-1~]# touch -d 20180808 aa  
#将aa文件的存取和修改时间改为2018年8月8日

15、clear命令

clear命令用于清除字符终端屏幕内容。
等价于CTRL+L

16、uname命令

uname命令用于显示系统信息。
例如:

root@RHEL7-1~]# uname -a
LinuxServer 3.6.9-5.EL
#1 Wed Jan 5 19:22:18 EST 2005 i686 i686i386 GNU/Linux

17、man命令

man命令用于列出命令的帮助手册。
例如:
[root@RHEL7-1~]# man ls
典型的man手册包含以下几部分。
NAME:命令的名字。
SYNOPSIS:名字的概要,简单说明命令的使用方法。
DESCRIPTION:详细描述命令的使用,如各种参数选项的作用。
SEE ALSO:列出可能要查看的其他相关的手册页条目。
AUTHOR、COPYRIGHT:作者和版权等信息。

18、shutdown命令

shutdown命令用于在指定时间关闭系统。该命令的语法为:
shutdown [参数] 时间 [警告信息]
shutdown命令常用的参数选项如下。
-r:系统关闭后重新启动。
-h:关闭系统。时间可以是以下几种形式。
now:表示立即。hh:mm:指定绝对时间,
hh表示小时,mm表示分钟。
+m:表示m分钟以后。
例如:

[root@RHEL7-1~]# shutdown -h now   #关闭系统

19、halt命令

halt命令表示立即停止系统,但该命令不自动关闭电源,需要人工关闭电源。

20、reboot命令

reboot命令用于重新启动系统,相当于“shutdown -r now”。

21、poweroff命令

poweroff命令用于立即停止系统,并关闭电源,相当于“shutdown-h now”。

22、history命令

history命令用于显示用户最近执行的命令,可以保留的历史命令数和环境变量HISTSIZE有关。只要在编号前加“!”,就可以重新运行history中显示出的命令行。例如:

[root@RHEL7-1~]# !1239

23、echo命令

echo命令用于在终端输出字符串或变量提取后的值,格式为
echo[字符串 |$ 变量]
例如,把指定字符串“long.com”输出到终端屏幕的命令为:
[root@RHEL7-1 ~]# echo long.Com
该命令会在终端屏幕上显示如下信息:long.Com
下面,我们使用$变量的方式提取变量shell的值,并将其输出到屏幕上

root@RHEL7-1 ~]# echo $SHELL
/bin/bash

24、Linux命令的特点

在Linux系统中,命令区分大小写。在命令行中,可以使用“Tab”键来自 动补齐命令。利用向上或向下的光标键,可以翻查曾经执行过的历史命令,并可以再次执行。如果要在一个命令行上输入和执行多条命令,可以使用分号来分隔命令,如“cd/;ls”。断开一个长命令行,可以使用反斜杠“\”,可以将一个较长的命令分成多行表达,增强命令的可读性。执行后,shell自动显示提示符“>”,表示正在输入一个长命令,此时可继续在新行上输入命令的后续部分。

你可能感兴趣的:(Linux笔记,linux)