一、文件和目录的基本概念
1、命令提示符
[root@localhost~]#
root:当前登录的用户名
localhost:本机主机名
~:用户当前所在目录
root用户目录位置:/root
普通用户目录位置:/home
#:表示当前用户为管理员用户
$:表示当前用户为普通用户
2、切换用户:su 用户名
root用户切换到其他用户不需要密码,普通用户切换必须输入密码
3、显示当前目录路径:pwd
4、目录切换命令:cd
cd /etc 切换到 /etc/ 目录
cd … 返回上一级目录
cd 返回根目录
5、命令行编辑的几个辅助操作
Tab键:自动补齐
分号";":同一行输入多个命令,中间用;隔开
上下方向键:找出曾经执行过的历史命令
查看历史:history
Ctrl+L:清屏
Ctrl+C:终止命令
6、关机命令:shutdown
shutdown 参数说明:
[-t] 在改变到其他runlevel之前,告诉init多久以后关机
[-r] 重启计算机
[-h] 关机后关闭电源(halt)
[time] 设定关机(shutdown)前的时间
例:
shutdown -h now:马上关机
shutdown -h 9:九分钟关机
shutdown -r now:重启
poweroff:立马关机
二、shell命令介绍
shell命令格式:命令名 [选项] [参数]
1.文件管理命令
ls :列出当前目录内容
ls 显示结果以不同的颜色来区分文件类别
蓝色代表目录(文件夹)
灰色代表普通文件
绿色代表可执行文件
红色代表压缩文件
浅绿色代表链接文件(快捷方式)
-a 显示所有文件,包括影藏文件(以 .号开头的文件)
-l 以长格式显示文件或目录的详细信息
-h 以K、M、G等代为显示文件大小(默认为字节),提高可读性
2、通配符的使用
“?”匹配单个任意字符
“*”匹配多个任意字符
例1:显示/etc目录下文件以v开头,文件名为四个字符详细信息
ls -l /etc/v???
例二:显示/etc目录文件名以ns开头,扩展名是conf的文件详细信息
ls -l /etc/ns*.conf
3、创建目录(就是新建文件夹):要考虑权限问题
mkdir -p -m
例1:在当前目录创建名为test的子目录
mkdir /mnt/test
例2:在根目录中创建名为public的子目录
mkdir /public
例3:在当前目录中同事创建多个目录
mkdir test1 test2 test3
例4:创建连续目录
mkdir -p /media/cdrom
例5:创建目录,同事设置权限
mkdir -m 775 test
4、新建文件
touch 文件名
5、删除目录或文件 删除空目录:rmdir
例 1:删除当前目录下的空目录 mytest
[root@localhost /]:#rmdir mytest
例 2:删除连续目录
[root@localhost /]:#rmdir - p /media/cdrom/aa
删除文件:rm 默认只删除文件,不删除目录
例 1:删除当前目录下文件 1.txt
[root@localhost /]:#rm 1.txt 有提示,确认删除请输入 y
[root@localhost /]:#rm -f 1.txt 无提示,直接删除
例 2:删除当前目录下的 student 目录
[root@localhost /]:#rm -rf /student
6、复制文件或目录
[root@localhost ~]# cp /bin/touch /root/test/toch1
[root@localhost ~]# cp /etc/inittab /etc/inittab.bat 将文件进行备份
7、移动(剪切–粘贴)文件或目录 mv
[root@localhost ~]# mv /root/test/test1.txt /root/test/test2.txt 重命名
[root@localhost ~]# mv /root/test/test2.txt /tmp/
三、查看文件内容命令
1、cat–显示文件的内容
cat –n 显示行号
cat 在显示文本文件的内容时不进行停顿,因此不适合查看长文件。
2、more 或 less 分页显示文件内容
采用全屏的方式分页显示文件内容,当内容满屏时便会暂停,按空格键
继续显示下一画面,或按 q 键跳离,适于阅读长文件。
3、head 和 tail–查看文件开头或末尾的部分内容
默认情况下,head 显示前 10 行内容,tail 显示后 10 行内容。
举例:查看/etc/inittab 文件的前 3 行内容
查看/etc/inittab 文件的后 5 行内容
4、wc 命令——文件内容统计
作用:用于统计指定文件中的行数、单词数、字节数。
语法:wc(选项)(参数)
常用选项:
-l 统计行数
-w 统计单词数
-c 统计字节数
四、查找命令
1、find 命令:搜索文件与目录
作用:是在某个指定的路径下找我们需要的文件或目录,目标是文件或目录。
类似于在 Windows 系统中执行的“搜索”操作。
语法:find [查找范围] [查找条件表达式]
常用选项: -name 按名称查找,允许使用通配符。
-type 按文件类型查找文件类型包括:普通文件(f)、目录(d)、块设备 文件(b)、字符设备文件(c)
-user 按文件所有者查找,根据文件是否属于某个目标用户进行查找。
-size 按文件大小查找,使用“+”、“-”号设置超过或小于指定的大小 作为查找条件。常用的容量单位包括 k(注意是小写)、M、G
# find /etc -size +1024k -name “init*” #find /etc -name 1.txt
#find /etc -name 1.txt
2、grep 命令:查找文件内容
作用:是在某个文件中找我们所需要的某部分内容,目标是字符串。 则类似于在 WORD 中执行的“查找”操作。
语法:grep [选项] 查找条件 目标文件
常用选项:
-c :计算找到 ‘搜寻字符串’ 的次数
-i :忽略大小写的不同,所以大小写视为相同
-n :顺便输出行号
-v :反向选择,亦即显示出没有 ‘搜寻字符串’ 内容的那一行
注意:grep 不支持通配符,而是使用正则表达式:
^ 表示以什么字符开头
$ 表示以什么字符结尾
如:“^word”表示以“word”开头 “wordKaTeX parse error: Expected group after '^' at position 15: ”表示以“word”结尾 “^̲”表示空行
五、辅助命令
1、查看历史命令:history
作用:linux 的 history 命令的作用是,记录执行过的命令。
用法:history [n] n 为数字,列出最近的 n 条命令
使用!执行历史命令
! number 执行第几条命令
! command 从最近的命令查到以command开头的命令执行
!! 执行上一条
2、help 命令:只能查看内部命令的帮助信息
例:查看 pwd 命令的帮助信息
pwd --help
如果使用 help 命令查看外部命令的帮助信息时则会报错
使用–help 选项查以查看外部命令的帮助信息
3、man 命令:查看命令的帮助手册
使用“↑ ”、“↓ ”方向键滚动文本
使用 Page Up 和 Page Down 键翻页
按 Q 或 q 键退出阅读环境、按“/”键后查找内容
4、输入输出重定向
输入重定向:<
输出重定向:> 或 >>
输出重定向是将命令的输出结果重定向到一个文件中,而不是显示在屏幕上。
“>”后面指定的文件如果不存在,将先建立该文件,再保存命令结果到文件中。
“>”后面指定的文件如果存在,将先清空文件的内容,再保存命令结果到文件中。
“>>”可以将命令结果重定向并追加到指定文件的末尾保存,而不覆盖文件中原有的内容。
例:将 1.txt 的内容输出重定向到 a.txt
Cat 1.txt > a.txt
将 1.txt 的内容追加到 a.txt
cat 1.txt >> a.txt
将错误信息输出到文件
ls /etc/hhh 2> erro
cat > newfile
ls > newfile
cat > newfile < 1.txt
5、管道符 “|”
通过管道符“|”,可以把多个简单的命令连接起来实现更加复杂的功能。
管道符用于将“|”左边命令的执行结果作为“|”右边命令的输入。
例:
分页显示/etc 目录下所有文件和子目录的详细信息。
[root@localhost ~]# ls -lh /etc | more
显示/etc 目录下包含有“net”关键字的所有文件和子目录的详细信息。
[root@localhost ~]# ls -lh /etc | grep net
统计/etc 目录下所有以“.conf”结尾的文件的个数。
[root@localhost ~]# ls -l /etc/*.conf | wc –l
查看/etc/httpd/conf/httpd.conf 文件中除了以“#”开头的行和空行以外的内容
[root@localhost ~]# grep -v “^#” /etc/httpd/conf/httpd.conf | gerp –v “^$”
6、clear命令–清屏
ctrl + l
六、文件权限
1、文件属性说明
drwxr-xr-x. 2 root root 4096 Sep 26 08:31 Templates
1组 2组 3组 4组 5组 6组 7组
第 1 组:文件类型,其中第一个字符代表文件的类别。
- 普通文件 d 目录 l 符号链接
c 字符设备 b 块设备
文件的权限
r:可读 w:可写 x:可执行 -:没有权限
第 2 组:文件件的连接数
第 3 组:文件所有者
第 4 组:文件属组
第 5 组:文件大小,默认单位为字节
第 6 组:文件创建时间
第 7 组:文件名称
2、修改文件的权限:chmod
字母方式修改权限
文件所有者权限(u)
所属组权限(g)
其他用户权限(o)
所有用户(a)
例:/mnt 的权限是 drwxr-x—
chmod u-w /mnt 权限变为:dr-xr-x—
chmod o+rx /mnt 权限变为:dr-xr-xr-x
chmod g+w /mnt 权限变为:dr-xrwxr-x
chmod a+w /mnt 权限变为:drwxrwxrwx
3、数字方式修改权限
r=4 w=2 x=1 -=0
4、修改文件的所有者与所属组:chown
例:chown teacher:teacher /test1 同时修改所有者与所属组
chown root /test1 修改所有者
chown :student /test1 修改所属组
5、特殊权限:
(1)ACL:访问控制【针对其他用户当中的部份或个别用户设置特殊权限】
setfacl -m u:stu1:rwx A
创建一个 ACL 规则,使 stu1 用户对 A 目录具有 rwx 权限
getfacl A 查看 ACL 规则
setfacl -x u:stu3 A
删除 stu3 对 A 目录的 ACL 权限,只删除了一条规则
setfacl -b A
删除 A 目录的所有 ACL 规则
(2)SBIT:粘滞位权限(强制位权限)【针对其他用户,只能删除自己的文件,不能删除其他的用户的文件】
chmod o+t A
(3)SGID:针对其他用户设置,以所属组的身份去执行。
hmod g+s A
(4)SUID:以文件所有者的身份执行文件,只针对可执行文件。
chmod u+s A
命令大全: https://www.runoob.com/linux/linux-command-manual.html