SHELL解释终端

按着我的理解,SHELL终端类似于一个界面,像是windows的桌面,需要点击鼠标或其他的输入源进行操作,当点击鼠标时就会传递一个动态给服务器,告诉服务器我进行了操作,服务器根据点击的位置比如双击了文件夹,那么就是一个打开的操作,等同于linux上在终端写 cd xxxxx,在操作后必然会得到服务器的一个反馈。不论是图形化界面还是SHELL终端,他们是同一层面的,最终都是为了事现某些我们想要的操作。
SHELL是各种解释器的总成
默认的解释终端是bash,其所具备的特点如下

  1. 通过上下键调取之前操作过的命令(不同于history命令,一个是使用命令,一个是解释终端自带的功能)
  2. 参数命令等可以自动补齐
  3. 强大的批处理脚本(也不知道其他的解释器是没有还是怎么
  4. 环境变量功能(也不知道其他的解释器是没有还是怎么+1,这个不应该属于服务的功能吗

常见命令

命令格式

命令 参数 对象
参数格式:-x --xxxx(后面软件安装经常用,定义安装路径什么的)

查看命令内容的命令

  1. man 查看命令的功能和用法(一般靠百度,除非有自定义的命令,就要研究下自定义命令的参考文档在哪配置了,xxxxxxxxxxxxxxxxxxx 没找到)

常用系统工作命令

1. echo 显示

一般用于显示环境变量,或者结合重定向符处理一些写入等,另外就是shell脚本里常用来做判断
例如:
echo $NLS_LANG 显示字符集
echo “haha” &> xxxx.txt 把“哈哈”输出到这个文件

2. date 显示时间,或设置时间

date “+%Y%m%d” 显示当前时间并且以年月日形式展示,目前已知作用就是日志的命令或者备份时使用
date -s “20191002 15:59:00” 设置时间
参数说明如下

参数 作用
%Y
%m
%d
%H 24小时
%I 12小时
%M 分钟
%S
%t 控制
%j 今个是今年第几天

3. reboot,poweroff,shutdown

reboot 重启
pweroff 关机
shutdown -r now 立刻重启
shutdown now 立刻关机

4. wget网络下载

5. ps 查看进程

常与grep同用
ps -ef|grep tomcat 查看tomcat服务状态
ps -aux 查看所有进程
进程状态解析

状态 含义 解释
R 运行 running
S 中断 sleep 也可以叫等待,当有请求或者调用时变为R
D 不可中断 dead 死了,就不要鞭尸了
Z j僵死 zombie 没消失,类似于T状态,父进程让他死他才会死,直到父进程调用wait4()系统函数后将进程释放
T 停止 进程收到停止信号后停止运行。

6. top 监控用


top涵盖了uptime,ps,free命令
第1行:系统时间、运行时间、登录终端数、系统负载(三个数值分别为1分钟、5分钟、15分钟内的平均值,数值越小意味着负载越低)。
第2行:进程总数、运行中的进程数、睡眠中的进程数、停止的进程数、僵死的进程数。
第3行:用户占用资源百分比、系统内核占用资源百分比、改变过优先级的进程资源百分比、空闲的资源百分比等。其中数据均为CPU数据并以百分比格式显示,例如“97.1 id”意味着有97.1%的CPU处理器资源处于空闲。
第4行:物理内存总量、内存使用量、内存空闲量、作为内核缓存的内存量。
第5行:虚拟内存总量、虚拟内存使用量、虚拟内存空闲量、已被提前加载的内存量。

  1. 什么状态的系统是最佳的
    为1时CPU满队列运行
    为5时压力过大(睡不着觉),服务器可能崩溃
    趋于1最好,大于1请求会有等待,导致系统缓慢

7. fidof 查看服务占用的端口

fidof http

8. kill 杀死进程

kill pid
kill -9 pid 强制杀死

9. killall 杀死整个服务的进程

pidof http 看这个服务是否运行着
killall http 干掉这个服务所有的进程

系统状态检测命令

1. ifconfig 查看网卡信息

[root@linuxprobe ~]# ifconfig
eno16777728: flags=4163  mtu 1500inet 192.168.10.10  netmask 255.255.255.0  broadcast 192.168.10.255inet6 fe80::20c:29ff:fec4:a409  prefixlen 64  scopeid 0x20ether 00:0c:29:c4:a4:09  txqueuelen 1000  (Ethernet)RX packets 36  bytes 3176 (3.1 KiB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 38  bytes 4757 (4.6 KiB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0lo: flags=73  mtu 65536inet 127.0.0.1  netmask 255.0.0.0inet6 ::1  prefixlen 128  scopeid 0x10loop  txqueuelen 0  (Local Loopback)RX packets 386  bytes 32780 (32.0 KiB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 386  bytes 32780 (32.0 KiB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
  1. 第一行网卡名
  2. 第二行 IP,掩码,网关
  3. 第四行mac地址
  4. 第五行接收的数据包数量及大小
  5. 第七行发送的数据包数量大小(可以查看系统下载的数量)

2. uname 查看系统内核和版本信息

  1. 第二个参数,主机名
  2. cat /etc/rehat-release 查看更准确地版本

3. uptime 查看负载

top第一行

4. free 查看内存

free -h
top第三行

5. df 查看硬盘

df -lh

6. who 查看谁登陆了

who am i 查看自己的终端是哪个用户,其实命令那行@前面就看到了

7. last 查看所有登陆记录

last

8. history 历史命令

history搭配!id使用,可直接执行那行
history
!123

9. sosreport 救命

好像没啥大用,后面看看吧

工作目录切换命令

1. pwd 我在哪

pwd

2. cd 打开

cd / 打开根目录
cd ~ 打开家目录,根据登陆用户不同而不同
cd … 打开上一层
cd - 返回上一个路径
cd xxx 打开相对路径
cd /xx/xx 打开绝对路径
均可以tab填补

3. ls 显示当前路径有啥

ll 显示详细信息
ll xxx 检索xxx打头的文件

4. cat 看小文件

cat -n 加行号

5. more 看大文件

回车可换页,下面还显示进度,像看小说

6.head 从上往下看

head -n 10 就看前十行

7. tail 从下往上看

tail -f xxx动态看

8. tr 替换

cat 123 | tr [a-z] [A-Z] &> 123 查看一个文件,然后替换里面文字,再写进去
echo “aasdadsfAAASDFF” | tr [a-z] [A-Z] &> 123

9. wc 统计

wc <参数> xxx
-l 行数(line)
-w 单词数 (word)
-c 字节数(not 字符 byte)

10. stat 查看文件的具体信息

stat xxxx

[root@linuxprobe ~]# stat anaconda-ks.cfg
File: ‘anaconda-ks.cfg’
Size: 1213 Blocks: 8 IO Block: 4096 regular file
Device: fd00h/64768d Inode: 68912908 Links: 1
Access: (0600/-rw-------) Uid: ( 0/ root) Gid: ( 0/ root)
Context: system_u:object_r:admin_home_t:s0
Access: 2017-07-14 01:46:18.721255659 -0400
Modify: 2017-05-04 15:44:36.916027026 -0400
Change: 2017-05-04 15:44:36.916027026 -0400
Birth: -

Access 最后读取时间
Modify 最后修改内容的时间
Change 最后修改权限和属性的时间

11. touch 创建文件或者修改文件

touch xxxx 建目录
touch -a “20191002 12:12:00” xxxx改读取时间
touch -m “20191002 12:12:00” xxxx改修改时间
touch -d “20191002 12:12:00” xxxx 改所有时间

12. cut 根据切割符分离文件

cut -d: -f1 xxxx
-d 切割符号
:符号是什么
-f 要看的列数
1 列数

13. diff 比较不同

升级时比较配置文件或者其他文件或许有用
diff --brief a b 看是否不同
diff -c a b 列出来哪块不同

文件目录管理命令

1. touch 创建文件或者修改文件

touch xxxx 建目录
touch -a “20191002 12:12:00” xxxx改读取时间
touch -m “20191002 12:12:00” xxxx改修改时间
touch -d “20191002 12:12:00” xxxx 改所有时间

2. mkdir 创建目录

mkdir -p a/b/c 递归创建

3. cp 复制

cp <参数> a /xx/xx/b
-a = -pdr 复制属性等所有
-p 保留属性
-r 递归
-d 保留链接文件属性
-i 若存在询问是否替换
1. 为啥是保留链接文件属性?

4. mv 移动

mv a /xx/xx/b
剪切,重命名

5. rm 删除

rm -rf a 强制递归删除

6. dd 复制并生成

常用于生成一个特定大小的文件,或者取一个文件的某一部分
dd if=/dev/zero of=a count=1 bs=500M制作一个大小为500兆的文件a
dd if=/dev/cdrom of=RHEL-server-7.0-x86_64-LinuxProbe.Com.iso 这个就厉害了,只做个iso镜像文件,还能直接用。

7. file 查看文件属性

不同于stat ,前者是查询存储信息和时间信息,这个是查看属性

打包压缩与搜索命令

1. tar 压缩,解压缩

tar -czvf a.tar.gz a 压缩程gzip
tar -cjvf a.tar.bz2 a 压缩成bzip2
tar -xzvf a.tar.gz 解压
tar -xzvf a.tar.gz -C /opt/a 解压到/opt/a

2. grep 文件中查找

grep <参数> a b 从b文件里查询a数据
-i 不分大小写
-c 只返回行号
-n 显示行号
-v 反向选择
-b 查询二进制文件,把二进制文件当作文本文件
可以结合着ps等工具加管道符一起用
ps -ef|grep tomcat

3. find 查找

find -name “adsfb*” / 从根目录开始查找adsfb打头的文件

[linux学习](linuxprobe课程)二 常见的命令相关推荐

  1. Linux学习笔记(二)|常用命令

    Linux学习笔记(二)常用命令 1.文件处理命令 1.1命令格式与目录处理 -ls 功能描述:显示目录文件 原意:list 所在路径:/bin/ls 语法: ls-a 显示所有文件,包括隐藏文件 l ...

  2. Linux学习之CentOS(二)--初识linux的一些常用命令

    Linux学习之CentOS(二)--初识linux的一些常用命令 在VM上安装完了CentOS6.4以后,看着linux系统成功跑起来,心里小激动了一把......但是前方学习的道路还很遥远... ...

  3. Linux学习之CentOS(二十二)--单用户模式下修改Root用户的密码

    在上一篇随笔里面详细讲解了Linux系统的启动过程 (Linux学习之CentOS(二十一)--Linux系统启动详解),我们知道Linux系统的启动级别一共有6种级别,通过 /etc/inittab ...

  4. Linux学习笔记(二十三) -- QT的安装和卸载

    1.QT简介 Qt 是一个跨平台C++图形用户界面应用程序开发框架.它可以用来开发GUI程序和非GUI程序(比如控制台工具和服务器). 2.QT安装 使用如下命令: sudo apt-get inst ...

  5. linux 进程调度 内存,linux学习的任督二脉-进程调度和内存管理

    转自 宋宝华老师的博客 原文:https://blog.csdn.net/21cnbao/article/details/77505330 内功心法 学习或遇到问题时,反过来主动思考如果我是设计者,我 ...

  6. Linux学习笔记(二)——文件与磁盘系统

    Linux学习笔记(二)--文件与磁盘系统 文件操作 ls [选项][目录名]-l :列出长数据串,包含文件的属性与权限数据等-a :列出全部的文件,连同隐藏文件(开头为.的文件)一起列出来(常用)- ...

  7. Linux学习笔记(二)(Vim文本编辑器 权限管理(用户,用户组) 系统相关(磁盘,进程))

    Linux学习笔记(二) 5.账号管理 概述 一.用户账号管理 概述 1. 添加账号 :useradd(`useradd 选项 用户名`) 2. 删除帐号(`userdel 选项 用户名`) 3. 修 ...

  8. Linux学习记录(二)QEMU安装与Linux内核环境搭建

    Linux学习记录(二) 记录本人学习的过程和遇到的问题 QEMU安装与Linux内核环境搭建 Linux学习记录(二) 一.QEMU安装 1.什么是QEMU 2.QEMU安装 二.Linux内核环境 ...

  9. Linux学习-28-用户间切换相关命令

    8.15 Linux su命令:用户间切换(包含su和su -的区别) su 是最简单的用户切换命令,通过该命令可以实现任何身份的切换,包括从普通用户切换为 root 用户.从 root 用户切换为普 ...

  10. Linux学习之CentOS(二十九)--Linux网卡高级命令、IP别名及多网卡绑定

    本篇随笔将详细讲解Linux系统的网卡高级命令.IP别名以及Linux下多网卡绑定的知识 一.网卡高级命令 在之前的一篇随笔里Linux学习之CentOS(九)--Linux系统的网络环境配置,详细讲 ...

最新文章

  1. 深度学习环境配置指南!(Windows、Mac、Ubuntu全讲解)
  2. flume-elasticsearch-sink indexName
  3. Spring事务管理介绍
  4. oracle学习笔记系列------oracle 基本操作之表的增删改查
  5. python文件操作小总结
  6. 人是什么垃圾?AI识别功能用到垃圾分类上时 网友试了试“扫自己”
  7. Java 学习总结(187)—— 轻量级开源日志框架 tinylog 简介
  8. Linux命令之文本分析工具awk
  9. 三菱plc编程软件gx+developer安装教程
  10. 手机dpi修改工具_手机dpi修改器
  11. 电源过冲怎么测试软件,【经验】以DL3000电子负载为例,3分钟学会一个电源动态响应测试技巧...
  12. Python中使用seek方法来移动文件指针的位置
  13. 腾讯全民wifi驱动无法安装
  14. ZigBee 3.0实战教程-Silicon Labs EFR32+EmberZnet-3-01:BootLoader+Application的开发模式
  15. unity3d画布切换_画布内3D折叠导航
  16. 深度学习PPT(入门简介)
  17. Container Station搭建个人网盘Nextcloud(Mariadb)
  18. Wireshark配置显示IP地理位置信息
  19. 阿蒙森 斯科特_三个斯科特的故事值得一听...
  20. 奥比中光深度相机使用笔记一

热门文章

  1. 华为Mate40pro值不值得购买
  2. Stanford CoreNLP Stanza使用手册
  3. 关于GDPR体系文件介绍,介绍GDPR体系文件的内容和意义
  4. 微带(Micro strip)——学习笔记
  5. 博客园背景特效(粒子线条,彩带,滴墨水)
  6. Halcon学习笔记02——透视形变的车牌识别
  7. php集成套件都有什么用,【共享手册|这几个好用的php环境套件,你一定要知道啊】- 环球网校...
  8. 微信分享接口的参数解析
  9. 嵌入式设备GB28181
  10. 【倒计时2天】Cocos华丽蜕变,就在4月2日!