通用语法格式:# 指令名称 [选项] [操作的目标]
假设:让小明去楼下超市买清风牌的餐巾纸和农夫山泉牌矿泉水。
语法1:#ls [路径]
表示列出指定路径下的文件夹和文件的名字,如果路径没有指定则列出当前路径下的(list)
例如:在root用户的家目录中输入ls命令,则会看到以下的效果:
要求列出/home的文档的名称。
#ls /home
语法2:#ls -l [路径]
表示以列表的形式列出指定路径下的文件夹和文件的名字
例如:使用ls –l的命令列出当前用户家目录中的文件夹和文件信息
语法3:#ls -la [路径]
表示以列表的形式列出指定路径下的文件夹和文件名(包含隐藏文件,all)
例如:在当前用户的家目录中输入ls –la命令可以查看全部的文件夹和文件名,并且包含了隐藏文件(特点是以“.”开头的名字)
表示的含义:清空当前屏幕中全部的命令(其实质是没有清空,只不过是顶到上面去了)
语法:#clear
作用:切换用户(switch user)。
语法:#su 需要切换到的用户名(用户名可以不写,则表示切换到root用户)
例如:
1、从root用户切换到admin用户。
#su admin
2、从admin用户切换到root用户。
#su root
等价于:
#su
通过上述两个命令的操作发现一个结论:
当切换到的用户权限如果比当前用户的权限低,可以直接切换,不需要密码;反之,如果从低往高切换则要求输入被切换到的账户对应的密码。
作用:切换目录(change directory)。
语法:#cd 需要切换到的路径(路径可以是相对路径,也可以是绝对路径)
路径可以写也可以不写,不写则表示切换到当前用户的家目录。
例如:
1、从root用户家目录中切换到admin用户的家目录中
#cd /home/admin
提示:在切换路径或者后期打开一个文件的时候可以多建议使用tab键(可以自动补全命令路径)。
2、切换用户切换到admin用户,然后从admin用户的家目录使用cd切换到root的家目录
#su admin
#cd /root
结论: 低级用户没有权限访问高级用户相关的资源。
关于路径:
路径分为相对路径和绝对路径。
相对路径是相对当前路径的一种表现形式。
特点:只要不是以“/”开头的就是相对路径。
绝对路径是直接从“根”开始的一种路径形式。
特点:以“/”开头的路径称之为绝对路径。
案例:从root用户家目录中切换到admin用户的家目录中,要求以相对路径形式书写。
#cd ../home/admin
分析:
当前路径:/root
目标路径:/home/admin
作用:打印当前的工作路径(print working directory)。
例如:在当前用户的家目录中使用pwd命令。
命令:touch
语法:#touch路径
例如:
1、在当前路径下创建一个文件名字叫php2018.txt。
# touch php2018.txt
2、在磁盘根目录下创建文件php2018.txt。
# touch /php2018.txt
命令:mkdir [make directory]
语法:#mkdir 文件夹路径
例如:在root的桌面上创建一个php69的文件夹
#mkdir php69
问题:
#mkdir index.php创建的是什么? 【文件夹】
问题:
在上述的指令执行的基础上行,执行#touch index.php,创建的是什么?【什么都没有】
命令:cp (copy)
语法:#cp [-r] 需要复制的文档 需要保存的位置
选项说明:
-r:表示递归。如果复制的是文件夹,则-r就不是选项,是必须要加的。
问题:文档在复制的过程中,其名称一般是否变化? 【不变,数量变化】
案例1:需要使用root用户,将根下的php2018.txt复制到admin用户的家目录下
#cp /php2018.txt /home/admin/
案例2:将桌面上(当前目录)的php69文件夹复制到admin的家目录下
#cp php69 /home/admin/
命令:mv (move)【剪切+粘贴】
语法:#mv 需要操作的文档 新的文档的位置
案例:【移动/剪切】将admin家目录下的php2018.txt,移动到root家目录下。
问题:移动操作会影响什么? 【路径变化,数量不变,名称不变】
#mv /home/admin/php2018.txt /root/
案例2:【重命名】将root下的php2018.txt重命名为php.doc。
问题:重命名操作会影响什么? 【名称变,路径不变,数量不变】
#mv /root/php2018.txt /root/php.doc
命令:rm (remove)
语法:#rm [-rf] 需要删除的文档
选项说明:
-r:表示递归
-f:force,表示强制,没有删除确认提示
案例1:删除root下的php.doc
案例2:删除root下的php文件夹
面试题:
请问使用root用户“#rm -rf /”这个命令能不能执行?
答:从语法上讲,该指令可以执行,表示递归删除根,但是这个操作很危险,不建议执行。
作用:查看一个文件的末n行
语法:#tail -n 文件的路径
说明:-n可以不写,不写,默认表示10行。
案例:使用tail指令查看root/install.log文件的末5行和末10行
#tail -5 /root/install.log
#tail /root/install.log 等价于 #tail -10 /root/install.log
作用:查看文件的头n行
语法:#head -n 文件的路径
注意:如果不指定-n则默认头10行
案例:使用head指令查看root/install.log文件的头5行和头10行
#head -5 /root/install.log
#head /root/install.log 等价于 #head -10 /root/install.log
作用:查看某个文件的全部内容(将内容全部输出在命令行中)【正序】
语法:#cat 文件路径1 文件路径2 文件路径3 …
案例:使用cat指令输出install.log文件内容
#cat /root/install.log
作用:查看某个文件的全部内容(倒序的)
语法:#tac 文件路径1 文件路径2 文件路径3…
案例:使用tac指令输出install.log文件内容
#tac /root/install.log
作用:打开一个文件,显示内容
语法:#vim 文件路径
例如:打开/root/install.log
#vim /root/install.log
退出输入“:q”按下回车即可。
作用:重启计算机
语法:#reboot
注意:部分情况下(除非自开机以来只有当前一个普通用户登录过)普通用户无法执行reboot指令
作用:关机
语法:#shutdown -h 时间
时间常见的值:
now:(shutdown -h now),表示立即关机
+m:(m表示minutes数字),例如+5,则表示五分钟之后关机
作用:关机(关闭内存)
语法:#halt
在命令行中可以使用ctrl+a,来进行光标的快速定位:可以将命令行中的光标从其他的位置快速移动到行首。【ahead】
在命令行中可以使用ctrl+e,来进行光标的快速定位:可以将命令行中的光标从任意位置快速定位到行末。【end】
在命令行输入的位置可以按下↑来查看之前的执行命令历史,可以按下↓来翻到最新的命令执行历史。【即使远程终端断开连接,下次连接上依然可以使用】
按照下面的语法:
#需要执行的命令 > 需要保存到的文件路径 【覆盖写】
或者
#需要执行的命令 >> 需要保存到的文件路径 【追加写】