在工作中多使用docker、kubernetes等开源工具。工作中基本都是基于Linux系统进行操作的。记录一下工作中常用到的Linux命令,每个命令搭配一定的参数使用会更加方便。这里只记录常用到的命令以及参数

1. 系统工作命令
1. echo命令

echo命令用于在终端输出字符串或者变量提取后的值。格式为echo [字符串 | $变量]

  • 类似于java中的system.out.println
[root@k8s-master ~]# echo "hello world"
hello world
[root@k8s-master ~]# str="hello world"
[root@k8s-master ~]# echo $str
hello world
2. date命令

用于显示及设置系统的时间,格式为 date [选项] [+指定格式]

date常见的参数

  • %t 跳格[tab 键]
  • %H 小时(0~23)
  • %I 小时(0~12)
  • %M 分钟(0~59)
  • %S 秒(0~59)
  • %J 一年中的第几天
[root@k8s-master ~]# date
Thu Apr 11 13:42:20 CST 2019
[root@k8s-master ~]# date "+%Y-%m-%d %H:%M:%S"
2019-04-11 13:43:41
[root@k8s-master ~]# date "+%j"
101
3. reboot重启命令

reboot 命令用于重启系统,其格式为 reboot

[root@k8s-master ~]# reboot
4. poweroff命令

poweroff 命令用于关闭系统,其格式为 poweroff

[root@k8s-master ~]# poweroff
5. wget命令

wget命令在终端上下载网络文件,格式为 wget [参数] [下载地址]
参数介绍

  • -b 后台下载模式
  • -P 下载到指定的目录
  • -t 最大尝试次数
  • -c 断点续传
  • -p 下载页面内所有资源
  • -r 递归下载
[root@k8s-master ~]# wget http://www.linuxprobe.com/docs/LinuxProbe.pdf
6. ps命令

ps命令用于查看系统中的进程状态,格式为[ps 参数]
参数介绍

  • -a 显示所有进程
  • -u 显示用户以及其他详细信息
  • -x 显示没有控制终端的进程
[root@k8s-master ~]# ps aux
7. top命令

top命令是用于动态监测进程情况和系统负载等详细信息。top命令很强大,相当于linux中“强化版的windows的任务管理器”

top - 10:41:34 up 12 days, 19:14,  2 users,  load average: 1.00, 1.06, 0.92
Tasks: 635 total,   2 running, 633 sleeping,   0 stopped,   0 zombie
%Cpu(s):  4.6 us,  1.2 sy,  0.0 ni, 92.1 id,  1.7 wa,  0.0 hi,  0.1 si,  0.3 st
KiB Mem : 16268340 total,  7407372 free,  4552160 used,  4308808 buff/cache
KiB Swap:        0 total,        0 free,        0 used. 10456728 avail Mem 

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                                                                                                
32056 root      20   0  868460 790968  42808 S  25.2  4.9   1915:18 kube-apiserver  

top命令前五行是系统整体统计信息。分别代表系统负载、进程情况、cpu、物理内存、虚拟内存使用情况。

8. pidof命令

pidof命令用于查询某个服务的pid值,格式:[pidof 参数 服务名称]

   [root@k8s-master ~]# pidof java
   27775
9. kill 和killall命令

kill命令是用于终止pid值的进程 格式[kill 参数 pid值],killall命令是终止某个特定服务的所有进程 [killall 参数 某个进程名称]

2. 系统状态监测命令

系统状态监测命令能够更快,更好的了解linux的服务器。包括系统的网卡网络、系统内核、系统负载、内存使用情况、当前启动终端数量等相关命令的使用。

1. ifconfig命令

ifconfig用于获取网卡配置和网络运行状态等信息。格式为[ifconfig 网络设备 参数]
仅输入ifconfig可查看所有的网卡信息。

[root@k8s-master ~]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.223.16  netmask 255.255.255.0  broadcast 192.168.223.255
        inet6 fe80::20c:29ff:fede:d1af  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:de:d1:af  txqueuelen 1000  (Ethernet)
        RX packets 66  bytes 8951 (8.7 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 88  bytes 10153 (9.9 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

查看网卡信息时主要是查看网卡名称、inet后的IP地址、ether后的物理地址、RX和TX的接收数据包和发送数据包的个数和累计流量。

2. uname命令

uname命令查看系统内核和系统版本等信息。一般搭配-a参数,完整查看相关信息。

[root@k8s-master ~]# uname -a
Linux mysql 3.10.0-693.el7.x86_64 #1 SMP Tue Aug 22 21:09:27 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

另外查看当前系统版本的详细信息。

[root@k8s-master ~]# cat /etc/redhat-release 
CentOS Linux release 7.4.1708 (Core)
3. uptime命令

uptime命令可查看系统的负载信息。包括系统时间,系统运行时间,当前终端用户,以及系统在最近1分钟、5分钟、15分钟的系统压力情况。负载值越低越好,不要长期超过1,生产环境不要超过5

[root@k8s-master ~]# uptime
 11:15:53 up 14 min,  2 users,  load average: 0.00, 0.04, 0.05
4. free命令

显示当前系统中内存的使用量信息。格式为[free -h]

[root@k8s-master ~]# free -h
              total        used        free      shared  buff/cache   available
Mem:            15G        4.4G        6.7G        739M        4.4G        9.8G
Swap:            0B          0B          0B
5. histroy命令

histroy命令用于显示历史执行过的命令,格式为[history -c]
执行 history 命令能显示出当前用户在本地计算机
中执行过的最近 1000 条命令记录。还可以使用“!编码数字”的方式来重复执行某一次的命令。

[root@k8s-master ~]# history
    1  ls
    2  cd /
    3  ls
    4  hostname
    5  ls
    6  cd mysql/
    7  ls
    8  cd data/
3. 工作目录切换命令

工作过程中是使用的linux几乎是不安装图形化的。为了减少开销。我们基本是用命令终端模式。使用过程中自然不会像在windows系统中那样可以很简单的切换工作目录。工作目录即使用户当前所处的位置。

1. pwd命令

pwd命令显示当前工作目录的绝对路径 格式[pwd 选项]

[root@k8s-master ~]# pwd
/root
2. cd命令

cd命令切换工作路径。这应该是linux中最常使用的一个命令了。

[root@k8s-master ~]# cd /home/
[root@k8s-master home]# 
3. ls命令

ls命令显示文件信息。格式[ls 选项]
-l参数可以查看文件属性,

[root@kubemaster home]# ls
config  docker  software  test.yaml
[root@kubemaster home]# ls -l
total 12
drwxr-xr-x  4 root       root         35 Feb 13 09:46 config
drwx--x--x 11 root       root        130 Mar 11 16:37 docker
drwxr-xr-x  4 root       root         30 Jan 10 14:08 software
-rw-r--r--  1 root       root        234 Sep  6  2018 test.yaml
4. 文件目录管理命令
1. mkdir命令

mkdir命令用于创建空白目录,格式[mkdir 选项 目录]
可使用-p参数,递归创目录。

[root@kubernetes ~]# mkdir -p /a/b/c
[root@kubernetes ~]# cd  /a/b/c
[root@kubernetes c]# pwd
/a/b/c
2. cp命令

cp 命令用于复制文件或目录,格式为cp [选项] 源文件 目标文件

[root@kubernetes ~]# cp install.log x.log
[root@kubernetes ~]# ls
install.log x.log
3. mv命令

mv 命令用于剪切文件或将文件重命名,格式为mv [选项] 源文件 [目标路径|目标文件名]

[root@kubernetes ~]# mv x.log linux.log
[root@kubernetes ~]# ls
install.log linux.log
4. rm命令

rm命令用于删除文件或目录,格式为rm [选项] 文件
在 Linux 系统中删除文件时,系统会默认向您询问是否要执行删除操作,如果不想总是
看到这种反复的确认信息,可在 rm 命令后跟上-f 参数来强制删除。

[root@kubernetes ~]# rm install.log
rm: remove regular empty file ‘install.log’? y
[root@kubernetes ~]# rm -f linux.log
[root@kubernetes ~]# ls
[root@kubernetes ~]#
Logo

开源、云原生的融合云平台

更多推荐