1.切换命令 cd
cd ~ 返回用户的家目录
cd -返回进入目前目录的上一次目录
cd ..进入上级目录
cd .进入当前目录
2.显示当前路径
pwd:显示当前路径
whoami 确定当前登录的用户
3.查看目录下文件
[root@localhost ~]# ls [选项] 目录名录
-a | 显示全部的文件,包括隐藏文件(开头为 . 的文件)也一起罗列出来,这是最常用的选项之一。 |
-A | 显示全部的文件,连同隐藏文件,但不包括 . 与 .. 这两个目录。 |
-d | 仅列出目录本身,而不是列出目录内的文件数据。 |
-f | ls 默认会以文件名排序,使用 -f 选项会直接列出结果,而不进行排序。 |
-F | 在文件或目录名后加上文件类型的指示符号,例如,* 代表可运行文件,/ 代表目录,= 代表 socket 文件,| 代表 FIFO 文件。 |
-h | 以人们易读的方式显示文件或目录大小,如 1KB、234MB、2GB 等。 |
-i | 显示 inode 节点信息。 |
-l | 使用长格式列出文件和目录信息。 |
-n | 以 UID 和 GID 分别代替文件用户名和群组名显示出来。 |
-r | 将排序结果反向输出,比如,若原本文件名由小到大,反向则为由大到小。 |
-R | 连同子目录内容一起列出来,等於将该目录下的所有文件都显示出来。 |
-S | 以文件容量大小排序,而不是以文件名排序。 |
-t | 以时间排序,而不是以文件名排序。 |
--color=never --color=always --color=auto | never 表示不依据文件特性给予颜色显示。 always 表示显示颜色,ls 默认采用这种方式。 auto 表示让系统自行依据配置来判断是否给予颜色。 |
--full-time | 以完整时间模式 (包含年、月、日、时、分)输出 |
--time={atime,ctime} | 输出 access 时间或改变权限属性时间(ctime),而不是内容变更时间。 |
4.创建目录
mkdir,mkdir [-mp] 目录名
创建多级目录:mkdir -p lm/movie/jp/cangls
使用 -m 选项自定义目录权限:mkdir -m 711 test2
5.删除空目录
rmdir student
删除多级空目录:rmdir -p lm/movie/jp/cangls
6.VIM使用
vim xxx.txt,
7.关机重启注销
shutdown -h now 马上关机
shutdown -r +2 两分钟后关机重启
shutdown -h 12:30 & 设置延迟关机,关机时间为系统时间12.30,并后台执行。
reboot
8.创建用户
useradd user_name
passwd user_name 1234567890
userdel user_name
9.touch和cp
touch hello.txt world.txt 建立空文件
cp aaa.txt bbb/ 将文件aaa拷贝到bbb目录下。
cp -r test/ zwj/ 将test目录下的文件拷贝到zwj目录下 有相同文件时会提示,使用: \cp -r test/ zwj/
10.rm mv
rm -rf xxx/ 删除xxx下的目录
rm xxx.txt 直接删除xxx.txt
rm -f xxx/ 强制删除不提示
mv oldnamefile.txt newnamefile.txt 重命名
mv xxx.txt /root/ 移动文件
11.cat
cat [-n] xxx.txt 只能查看xxx文件的内容,不能修改(-n显示行号)
cat [-n] xxx.txt | more 查看文件内容,分页显示,
12.more
more以全屏的方式按页显示文本文件的内容。
more 要看的文件 // 按空格翻页,按enter按行显示,q退出)按空格翻页。
13.less
less用来分屏查看文件内容,他的功能与more相似,但是比more指令更加强大,并不是以一次将整个文件加载之后才显示,而是根据显示需要加载内容。(大型文件)按空格翻页,按enter按行显示,q退出)按空格翻页
less 要查看的文件
14.重定向和追加
ls -l > a.txt 将ls-l的结果覆盖写入a.txt文件中,如果该文件不存在则创建该文件。
cat /etc/profile > c.txt
ls -l >> a.txt 将ls-l的结果追加写入a.txt文件中。
15 ehco 输出内容到控制台
echo [选项] [输出内容]
echo $path :输出当前的环境变量。
echo "hello,world!"
echo输出文字改变颜色:echo -e "\e[1;31mthis is red text\e[0m" (颜色码:重置=0,黑色=30,红色=31,绿色=32,黄色=33,蓝色=34,洋红=35,青色=36,白色=37;背景色:重置=0,黑色=40,红色=41,绿色=42,黄色=43,蓝色=44,洋红=45,青色=46,白色=47,)
16.head指令
head 文件 (查看文件的前十行)
head -n 5 文件 :显示文件的前五行。
16.tail指令
tail 文件 (显示文件的后十行)
tail -n 5 文件:(显示文件的后五行)
tail -f 文件 :(实时追踪该文档的所有更新,工作经常使用)eg:tail -f mydate.txt(如果该文件有变化则会显示变化内容。)
17.Ln指令(软链接/符号链接)
类似于windows 的快捷方式,主要存放了链接其他文件的路径
Ln -s [原文件或目录] [软链接名]
ln -s /root linktoroot cd linktoroot链接到root目录。
rm -rf linktoroot //删除软链接
18.history指令
查看已经执行过的历史指令,也可以执行历史指令
history (查看所有已执行过的历史指令)
history 10 (显示最近使用过的10个指令)
!178 执行编号为178的指令。
时间日期类:
19.date
语法:date(选项)(参数)
选项:-d<字符串>:显示字符串所指的日期与时间。字符串前后必须加上双引号;
-s<字符串>:根据字符串来设置日期与时间。字符串前后必须加上双引号;
date+%Y(显示当前年份) date+%m(显示当前月份) date+%d (显示当前是哪一天)
date"+%Y-%m-%d %H:%M:%S"
参数:<+时间日期格式>;指定显示时使用的日期时间格式。
date -d "2 day ago" +"%Y-%m-%d"
20.CAL
cal 显示当年当月日历
cal 2020 显示2020年全年日历
21.FIND
find 目录 -name
22.LOCATE
定位
23.GREP
过滤查找 语法:grep [-n] 查找内容 源文件
24.管道符号 |
表示将前一命令的处理结果输出传递给后面的命令处理。
25.gzip 和gunzip
gzip 文件(压缩文件,将文件压缩为*.gz文件)
gunzip 文件.gz(解压缩文件)
26.tar
tar指令是打包指令,最后打包的文件是.tar.gz的文件
tar [选项] XXX.tar.gz 打包内容 (将打包内容打包,压缩为.tar.gz格式,文件名为XXX,打包内容可以使多个文件)
选项:-c 产生打包文件 -v显示详细信息 -z打包同时压缩 -f指定压缩后的文件名 -x解包.tar文件
eg:将home目录下所有文件打包为myhome.tar.gz
tar -zcvf myhome.tar.gz /home/
将上述文件解压当前目录[/opt/目录下]
tar -zxvf myhome.tar.gz [/opt/] 指定解压到的目录要事先存在。
27.组与文件的权限
所有者、所在组、其他组
查看文件所有者 ls -ahl
创建组:groupadd police
创建一个属于police组的用户: useradd -g police tom
给用户tom设定密码:passwd tom
改变文件的所有者:chown 用户 文件名 ()
修改文件的所在组:chgrp 组名 文件名 (chgrp police orange.txt)
同时更改文件的所有者和所在组 chown newowner:newgroup file
查看用户信息 id username
再添加用户是,可以指定将该用户添加到哪个组中,同样的用root管理权限可以改变某个用户所在的组。
改变用户所在组:usermod -g 组名 用户名
改变用户登录的初始目录:usermod -d 目录名 用户名
添加用户并设置用户所在组:useradd -g police jack
添加用户并设置用户登录的初始目录:useradd -d /home/etc jack
dr--r--r-- 1 tom police 6 三月 15:58 :第一位为-是普通文件,d为目录,1为软连接,c为字符设备(键盘鼠标),b为块文件;后九位三个一组分别表示拥有者、文件所在组、其他组的权限,其中三位为rwx,分别表示可读,可写,可执行;1:如果是文件表示硬链接,如果是目录,指该目录下子目录的个数;tom为拥有者,所在组为police;6文件的大小,如果是目录的显示4096;15:58 最后的修改时间。
操作用户使用useradd,userdel ;操作文件使用chmod、chgrp
28.文件修改权限(chmod)
所有者=作者,所有组=文件所在的组
chmod u=rwx,g=rx,o=x 文件名 (相当于chmod 751 文件名,也相当于chmod u=7,g=5,o=1 文件名)
将kkk目录下所有文件,包括子目录和子目录下的文件,全部所有者改为tom
chown -R tom /home/kkk/
将kkk目录下所有文件,包括子目录和子目录下的文件,全部所在组改为shaolin
chown -R shaolin /home/kkk/
29.crond任务调度
crontab 进行定时任务的设置
概述:任务调度:是指系统在某个时间执行的特定的命令或程序
任务调度分类:1.系统工作,有些重要的工作必须周而复始地执行。如病毒扫描等。2.个别用户可能希望执行某些程序,比如对mysql数据库的备份。
基本语法:crontab [选项] 选项有:-e编辑crontab定时任务、-L查询crontab任务、-r删除当前用户所有的crontab任务。
如果只是简单任务可以不用书写脚本,直接在crontab中假如任务即可;对于比较复杂的任务可以使用使用脚本(shell编程)。
crontab -e 【命令】保存退出后生效。命令:
30.linux文件查看命令 cat、more、less的区别
cat:cat是一次性显示整个文件的内容,还可以将多个文件连接起来显示,它常与重定向符号配合使用,适用于文件内容少的情况。 more和less一般用于显示文件内容超过一屏的内容,并且提供翻页的功能。more比cat强大,提供分页显示的功能,less比more更强大,提供翻页,跳转,查找等命令。而且more和less都支持:用空格显示下一页,按键b显示上一页。下面详细介绍这3个命令。
31.磁盘情况查询:
查询系统整体磁盘使用情况:df -LH
查询指定目录的磁盘占用情况:du -h /目录 -s指定目录占用大小汇总;-h带计量单位;-a含文件;--max-depth =1子目录深度。
eg:查询/opt目录的磁盘占用情况,深度为1.
du -ach --max-depth=1 /opt
32.网络配置:
自动获取:系统--首选项--编辑--自动获取(缺点:每次linux启动自动获取的IP地址可能不一样。)这个不适用于做服务器,因为服务器的IP需要固定。
固定IP:直接修改配置文件来指定IP,并可以连接到外网,编辑vim /etc/sysconfig/network-scripts/ifcfg-eth0 , 将BOOTPROTO设置为static,ONBOOT设置为yes,然后将IPADDR、GATEWAY、DNS1进行设置。(DNS和网关保持一致。)
33.修改主机名
1.查看当前主机名:hostname
2.修改linux的主机映射文件:vim /etc/sysconfig/network
文件中内容 NETWORKING = yes --> NETWORKING_IPV6=no --> HOSTNAME=hadoop100
3.修改 /etc/hosts增加ip和主机的映射
192.168.102.130 hadoop100
4.并重启设备,生效。
5.如果希望windows也可以通过主机名来连接centos,进入C:\windows\system32\drivers\etc\hosts,修改192.168.1.100 hadoop100
34.进程管理(ps)
在linux中,每个执行的程序(代码)都称为一个进程。每个进程都分配一个ID号
每一个进程都会对应一个父进程,而这个父进程可以复制多个子进程。例www服务器
每个进程都可能以两种方式存在的。前台与后台,所谓前台进程就是用户目前的屏幕上可以进行操作的。后台进程则是实际在操作,但由于屏幕上无法看到的进程,通常使用后台方式执行。
一般系统的服务都是以后台进行的方式存在,而且都会常驻在系统中。知道关机才结束。
查看进行使用的指令为PS,一般来说使用参数是 ps -aux
可以使用ps指令查看系统执行进行并分类 ps -aux | grep xxx,
ps指令详解:
:
查看系统执行的父进程:ps -ef | more
其中的PPID是指父进程。
35.终止进程kill和killall
sshd:远程登录服务
若是某个进程执行一半需要停止时,或是已消了很大的系统资源时,此时可以考虑停止该进程,使用kill命令来完成此项任务。
强制杀死一个进程:kill [选项] 进程号 或killall 进程名称。
例如:ps -aux | grep sshd ----kill xxxx
kill -9 xxx :强制杀死某个进程。
killall gedit:杀死所有的gedit进程
如果有些命令在执行时不断地在屏幕上输出信息,影响到后续命令的输入,则可以在执行命令时在末尾添加上一个&符号,这样命令将进入系统后台来执行。
37.查看进程树pstree
pstree [选项],更加直观的查看进程信息。
选项内容有:-p 显示进程的PID
-u 显示进程所属用户
38.服务管理
服务(service)本质就是进程,但是试运行在后台的,通常都会监听某个端口,等待其他程序的请求,比如(mysql,sshd,防火墙(iptables)等),因此我们又称为守护进程。
service 服务名 [start | stop | restart |reload | status]
在CentOS 7.0后,不再使用service,二十systemctl 即为system control简写systemctl
测试linux的某个端口是否打开客用:telnet IP地址 端口号
如何查看有多少种服务第一种方式:setup ---到系统服务中可查看
第二种方式:ls -l /etc/init.d/
39.服务的运行级别
查看或者修改默认级别 : vi /etc/inittab
每个服务针对不同的linux系统运行级别都有自己的服务级别
linux的开机流程:开机---bios--/boot---init进程1---运行级别---运行级对应的服务。
可以使用chkconfig命令可以给每个服务的各个运行级别设置自启动/关闭
基本语法:查看服务 chkconfig --list | grep xxx 相当于chkconfig xxx --list
chkconfig --level 5 XXX on/off 设置xxx服务在系统运行级别为5时自启动关闭还是打开。
40.top监测系统运行情况
监控某用户 top--- U----username
终止指定的进程 top---k---进程ID号
指定系统状态更新的时间(每隔10秒自动更新,默认是3秒): top -d 10
41.监控网络服务(重要)
netstat [选项]
选项:
42.pidof(选项)(参数)
选项:-s:仅返回一个进程号;-c:进显示具有相同“root”目录的进程;-x:显示由脚本开启的进程;-o:指定不显示的进程ID。
参数:进程名称:指定要查找的进程名称。
pidof crond
pidof -s crond
43.uptime命令:
uptime命令能够打印系统总共运行了多长时间和系统的平均负载。uptime命令可以显示的信息显示依次为:现在时间、系统已经运行了多长时间、目前有多少登陆用户、系统在过去的1分钟、5分钟和15分钟内的平均负载。
[root@LinServ-1 ~]# uptime -V #显示uptime命令版本信息
procps version 3.2.7
[root@LinServ-1 ~]# uptime
15:31:30 up 127 days, 3:00, 1 user, load average: 0.00, 0.00, 0.00
15:31:30 //系统当前时间
up 127 days, 3:00 //主机已运行时间,时间越大,说明你的机器越稳定。
1 user //用户连接数,是总连接数而不是用户数
load average: 0.00, 0.00, 0.00 // 系统平均负载,统计最近1,5,15分钟的系统平均负载
44.free(选项)
选项:-b:以byte为单位显示内存使用情况,-k:以KB为单位显示内存使用情况;-m:以MB为单位显示内存使用情况;
free命令可以显示当前系统未使用的和已使用的内存数目,还可以显示被内核使用的内存缓冲区。
45.mv(选项)(参数)
- 如果目标文件是到某一目录文件的路径,源文件会被移到此目录下,且文件名不变。
- 如果目标文件不是目录文件,则源文件名(只能有一个)会变为此目标文件名,并覆盖己存在的同名文件。如果源文件和目标文件在同一个目录下,mv的作用就是改文件名。当目标文件是目录文件时,源文件或目录参数可以有多个,则所有的源文件都会被移至目标文件中。所有移到该目录下的文件都将保留以前的文件名
- mv /usr/men/a.txt .