Linux日常指令
Linux:
https://man.linuxde.net/ Linux命令大全
基础指令
终端输入:
#shutdown -h now :
立即关机
#ls:
显示路径下所有的文件;
(ps:文件路径写法, /表示绝对路径;./表示当前路径,../表示当前的上级路径,例如,/home/linux1/linux2 这样一个路径可以这些写法:/home/linux1/linux2(绝对路径),./linux1(./处于/home时),../linux2(../处于Linux2))
用法:ls 路径 (ps:ls /home,home文件夹下所有的文件)
-l:打开文件的详细信息
-a:打开隐藏的文件夹
-h: 打开所有的文件
#pwd:
打开当前位置;
用法:输入pwd回车会打印pwd当前位置;
#cd:
打开路径的文件;
用法:cd 路径(cd /home, 终端进入到home文件夹下)
#cp:
复制文件或文件夹到某路径下;
用法:cp 被复制路径 存放路径(cp /home/linux1.txt /home/aa/liniux1.txt )
#mv:
移动文件或文件夹到某路径下;
用法:mv 被移动路径 存放路径(mv /home/linux1.txt /home/aa/liniux1.txt )
#mkdir:
创建文件夹;
用法:mkdir 创建文件夹路径(mkdir /home/linux1)
#touch:
创建文件;
用法:touch 创建文件夹路径(touch /home/linux1.txt)
#rm:
删除文件或文件夹;
-f:force,强制;无需提示;
-r:递归;
用法:rm 被删除路径 (rm /home/linux1.txt)
rm -rf 被删除路径(rm -rf /home/linux1*,删除like "linux1%"的所有文件)-- *表示通配符;
#vim:打开一个文件
用法:vim 文件路径(vim /home/linux1/linux.txt)
打开后如何退出?
:q(英文冒号+q回车)直接退出;
#输出重定向
>:将结果 覆盖保存到
>>:将结果 追加保存到
用法:正常指令 +>/>>+文件路径
比如:ls-la > /home/linux1/linux2.txt,将ls-la的指令的结果 覆盖保存到Linux2.txt中;
ls-la >> /home/linux1/linux2.txt,将ls-la的指令结果追加到Linux2.txt中;
#cat:
1、直接打开文件 2、合并文件
用法1:cat 文件路径(cat /home/linux1/linux2.txt)
用法2:合并文件:cat 文件路径 文件路径 > 合并后路径;(cat /home/linux1/linux2.txt /home/linux1/linux3.txt > home/hebing.txt )
进阶指令
#df -h:
查看磁盘空间
#free:
查看内存的使用情况;
-m:以M为单位的内存情况;(free -m)
#head:
查看文件前几行,默认显示前10行;
head -n 文件路径:n表示数字。查看前n行;(head -5 /home/linux1/linux2.txt)
#tail:
查看文件的末几行,默认显示后10行;
用法1:tail -n 文件路径 (tail -5 /home/linux1/linux2.txt)
用法2:tail -f 文件路径,查看一个文件的动态内容变化【变化不能是用户手动增加的】(日志变化)
ctrl+C 退出
#less:
查看较少的文件内容进行输出,按辅助功能键(数字+回车)查看更多;
用法:less 文件路径 (less /home/linux1/linux2.txt)
q 退出
#wc:
统计文件内容信息(行数,单词数,字节数)
用法:wc -lwc 文件路径
-l:lines,行数;
-w:words单词数;(空格判断单词数量)
-c:bytes,字节数;
#date :
读取,设置时间;(以后shell脚本会用到)
用法:date
用法2:date +%F
用法3:date "+%F %T"
https://man.linuxde.net/ Linux命令大全
用法4: date -d "-1 day" "%Y-%m-%d %H:%m:%S"
"
-d<字符串>:显示字符串所指的日期与时间。字符串前后必须加上双引号;
-s<字符串>:根据字符串来设置日期与时间。字符串前后必须加上双引号;
-u:显示GMT;
--help:在线帮助;
--version:显示版本信息。
# cal:
日历,输出当前月的日历;
cal -s:
cal -m:
cal -3:输出,上一个月,本月,下一月的日历;
cal -y:输出某年的日历;
#clear/ctrl +L
清除终端已存在的命令和信息;(命令被向上滚动,不是真正的被清空)
管道
管道符:|
过滤案例:
ls /| grep o ;ls指令的结果按o过滤;
grep:过滤;
扩展:
ls \|wc -l;wc -l统计行数,统计前一个ls指令的结果的行数;
高级指令
#hostname
读取和设置主机名;
用法1:hostname 输出完整的主机名
用法2:hostname -f 输出当前主机名中的FQDN
#id
查看用户的基本信息(包含用户id、用户组id、附加组id...),默认当前用户的;
用法1:id ,当前登录用户的基本信息
用法2:id 用户名, 指定用户的基本信息(id linux1)
验证上述信息是否正确?
验证用户信息?通过文件/etc/passwd (例如,cat /etc/passwd)
验证用户组信息?通过文件/etc/group (例如 ,cat /etc/group)
#whoami
显示当前登录的用户名,用于shell脚本,用于获取记录当前操作的用户名;(比如谁做了rm -rf操作,可以使用#whoami打印操作用户)
用法:whoami
#ps -ef
查看服务器的进程信息
-e: (=“-A”)列出全部的进程
-f: 显示全部的列
(输出结果的表头含义:
uid:用户id
pid:进程id
ppid:父级进程的id,如果一个进程的父级进程找不到,可以称之为僵尸(zombie)进程。
C:cpu的占用率;百分数;
StIME:进行的启动时间;
TYY:终端设备;发起该进程的设别识别符号;如果显示了“?”表示该进程不是由终端设备发起;
TIME:进程的执行时间;
CMD:进程的名称或者对应的路径;
)
例: 在ps的结果中过滤出想要查看的进程状态
ps -ef|grep 进程名称
#top
查看服务器的进程占用的资源
用法:top (动态显示)
退出:q(按下q键)
(PID:
PR:优先级;
VIRT:虚拟内存;
RES:常驻内存;
SHR:共享内存;
S:进程的状态(sleeping.S表示sleep,R表示run);
%CPU:表示CPU的占用百分比;
%MEN:表示内存的占用百分比;
COMMAND:进程的名称或路径;
)
M:按内存占用由高到低排序;
P:按CPU占用由高到低排序;
1:展开显示各个cpu的详细进程;
#du -sh
查看目录的真实大小;
-s:summaries,只显示汇总大小;
-h:以高可读性形式显示;
#find
查找文件(55个参数)
用法:find 路径范围 选项 选项的值
-name:按文档名称搜索(支持模糊搜索);(find /home -name httpd.conf;find /etc -name *.conf)
-type:文档的类型搜索(文档类型:“-”表示文件(在使用find时,用f替换),“d”表示文件夹);
(搜索/etc/sane.d/目录下的所有文件 :find /etc/sane.d/ -type f)
#service
服务(启动、停止、重启)
用法:service 服务名 start/stop/restart
service httpd start :开启apache的服务器(httpd是apache的服务器名称);
例:通过ps指令查看服务是否启动
ps -ef|grep httpd
#kill
杀死进程;
用法:kill 进程id;
(使用ps -ef查看进行是否存在)
与kill用法相似的:
killall 进程名称;(关掉进程相关的所有进程,包括子进程)
#ifconfig
用于操作网卡相关指令(获取网卡信息)
inet addr:网卡的ip地址;
#reboot
重新启动计算机;
用法1:reboot
用法2:reboot -w 模拟重启,但是不是重启(只写开关机日志,不是真正的重启)
#shotdown
关机
shotdown -h now .立即关机
ctrl+C 退出关机任务
#uptime
输出计算机的持续在线时间
用法:uptime
#uname
获取操作系统的详细信息
用法1:uname 系统类型:linux
用法2:uname -a 完整的系统信息(类型,全部主机名,内核版本、发布时间、开源计划)
#netstat -tnlp
查看网络的连接状态
用法:netstat -tnlp
选项说明:
-t :之列出tcp协议的连接;
-n:将地址从字母组合转化成ip地址,将协议转换为端口显示;
-l: 过滤出“state”列中其值为LISTEN(监听)的连接;
-p:显示发起连接的进程的pid和进程名称;
#man
manual,手册(linux中的全部命令手册,英文)
用法: man 指令名称
例:man cp 查看cp指令手册