一、目录介绍
/:表示的是根的意思
/bin:(binary)存放的是一些二进制文件,但是在Linux中二进制文件是可以被执行的。这个目录中的命令文件是给普通用户使用(非超级管理员用户)。
/etc:Linux下所有的配置文件都会存放到etc目录。
/home:是所有非root用户家目录的一个集合。
/root:root用户的家目录。
/sbin:sbin表示super bin(shell bin),里面同样也类似于bin目录,也存放了一些二进制文件,只不过这些命令只能是让超级管理员去运行。
/usr:存放着一些用户自己安装的软件,其实类似于windows下的Program Files目录。
/var:(variable)存放着Linux下的一些日志文件,在实际开发的时候有一些公司也习惯把Apache或者nginx的站点目录也会放到这个目录中。
二、命令行
关于用户身份标记说明:在Linux中#表示超级管理员身份,$符号表示普通用户。
三、基本指令
通用语法格式:# 指令名称 [选项] [操作的目标]
在Linux下严格区分大小写。
1、ls 指令
语法1:#ls [路径]
表示列出指定路径下的文件夹和文件的名字,如果路径没有指定则列出当前路径下的(list)
例如:在root用户的家目录中输入ls命令,则会看到以下的效果:
要求列出/home的文档的名称。
#ls /home
语法2:#ls -l [路径]
表示以列表的形式列出指定路径下的文件夹和文件的名字
例如:使用ls –l的命令列出当前用户家目录中的文件夹和文件信息
语法3:#ls -la [路径]
表示以列表的形式列出指定路径下的文件夹和文件名(包含隐藏文件,all)
例如:在当前用户的家目录中输入ls –la命令可以查看全部的文件夹和文件名,并且包含了隐藏文件(特点是以“.”开头的名字)
2、clear 指令
表示的含义:清空当前屏幕中全部的命令(其实质是没有清空,只不过是顶到上面去了)
语法:#clear
等效于快捷键:ctrl + L
清除Windows的cmd指令叫做:cls
例如,写了一大堆命令,为了方便看清楚页面使用clear,想要看之前的,只需要鼠标向上滚动即可,不会清除命令的记录
3、su 指令
作用:切换用户(switch user)。
语法:#su 需要切换到的用户名(用户名可以不写,则表示切换到root用户)
例如:
1、从root用户切换到guozhengyuan用户。
#su guozhengyuan
从zhang用户切换到root用户。
#su root (su 后面不加用户名,默认root)
root 高级管理员,guozhengyuan 普通用户,高级管理员切换到普通用户不需要密码,普通用户切换到高级管理员需要输入管理员密码
在输入密码的时候不会有任何的输入提示,输入完毕之后按下回车即可,如果输错了,可以按回车重新输入,或者按住backspace键3秒以上,然后重新输入。
4、cd指令
作用:切换目录(change directory)。
语法:#cd 需要切换到的路径(路径可以是相对路径,也可以是绝对路径)
路径可以写也可以不写,不写则表示切换到当前用户的家目录(一键回城)。
例如:
1.从root用户家目录中切换到guozhengyuan用户的家目录中
#cd /home/guozhengyuan
提示:在切换路径或者后期打开一个文件的时候可以多建议使用tab键(可以自动补全命令路径)。
2.切换用户切换到guozhengyuan用户,然后从guozhengyuan用户的家目录使用cd切换到root的家目录
结论: 低级用户没有权限访问高级用户相关的资源(权限)。
关于路径:
路径分为相对路径和绝对路径。
相对路径是相对当前路径的一种表现形式。
特点:只要不是以“/”开头的就是相对路径。
绝对路径是直接从“根”开始的一种路径形式。
特点:以“/”开头的路径称之为绝对路径。
/root/a/b/c
root/a/b/c
./root/a/b/c
../root/a/b/c
案例:从root用户家目录中切换到guozhengyuan用户的家目录中,要求以相对路径形式书写。
无论在哪一个家目录里,快速回到root目录 cd ~
5、pwd指令
作用:打印当前的工作路径(print working directory)。
例如:在当前用户的家目录中使用pwd命令。、
6、history 指令
四、基本操作命令
1、创建文件
命令:touch
语法:#touch路径
例如:
1.在当前路径下创建一个文件名字叫1.txt。
touch 1.txt
2.在磁盘根目录下创建文件1.txt。
touch /1.txt
2、创建文件夹
命令:mkdir [make directory]
语法:#mkdir [-p] 文件夹路径
选项:
-p表示递归创建(parent),可同时创建多级不存在的文件夹
例如:在root的桌面上创建一个hello的文件夹
#mkdir hello
注意:不能以 后缀 来判断文档是文件还是文件夹。应该看ls -l指令的执行结果的第一个字符。d表示文件夹,-表示普通文本文件。【c:字符设备文件、b:块状设备文件、l:连接文件(快捷方式)、s:套接字文件】
mkdir 创建的是文件夹、touch创建的是文件
3、复制
命令:cp (copy)
语法:#cp [-r] 需要复制的文档 需要保存的位置
选项说明:
-r:表示递归。如果复制的是文件夹,则-r就不是选项,是必须要加的。
问题:文档在复制的过程中,其名称一般是否变化? 【不变,数量变化】
案例1:需要使用root用户,将根下的1.txt复制到guozhengyuan用户的家目录下
案例2:将桌面上(当前目录)的hello文件夹复制到zhang的家目录下
4、移动/剪切/重命名
命令:mv (move)【剪切+粘贴】
语法:#mv 需要操作的文档 新的文档的位置
案例:【移动/剪切】将guozhengyuan家目录下的1.txt,移动到root家目录下。
问题:移动操作会影响什么? 【路径变化,数量不变,名称不变】
案例2:【重命名】将root下的1.txt重命名为1.。
问题:重命名操作会影响什么? 【名称变,路径不变,数量不变】
5、删除
命令:rm (remove)
语法:#rm [-rf] 需要删除的文档
选项说明:
-r:表示递归(当删除的类型是文件夹的时候就加-r)
-f:force,表示强制,没有删除确认提示(删除文件夹的时候也建议带上-f选项,避免重复的询问)
案例1:删除root下的1.
案例2:删除桌面上的hello文件夹