LinuxShell基础命令

参考文档RUNOOB Linux 教程

1.Linux基础命令

1.1 查看文件

  • cat -- 用于连接文件并打印到标准输出设备上
    cat /etc/issue

  • more --类似cat命令,以分页的方式显示文件内容
    ls -l |more

  • less --与more类似,但使用less可以随意浏览文件
    ps -ef| less
    history| less

  • head --用于显示文件的开头至标准输出中
    head -n 20 /etc/fstab
    ps -ef| head

  • tail --用于显示文件的末尾至标准输出中
    tail -n 20 /var/log/messages
    tail -f /var/log/messages

1.2 文本处理

  • vim是vi改进版本,程序员的文本编辑器
    vim常用模式
    命令模式
    插入模式
    ex模式
    可视模式

VIM模式

  • grep文本过滤

    grep -- 命令用于查找文件里符合条件的字符串

    grep [-abcEGhHilLnqrsvVwxy][-A<显示列数>][-B<显示列数>][-C<显示列数>][-d<进行动作>][-e<范本样式>][-f<范本文件>][--help][范本样式][文件或目录...]

  • wc计算字数

  • sed文本处理,利用script来处理文本文件

  • uniq删除文本重复行
    uniq命令用于检查及删除文本文件中重复出现的行列

  • awk处理文本文件语言,强大的文本分析工具

  • xagrs,给命令传递参数的一个过滤器

  xargs 默认的命令是 echo,这意味着通过管道传递给 xargs 的输入将会包含换行和空白,不过通过 xargs 的处理,换行和空白将被空格取代。
命令格式

somecommand |xargs -item command

参数
-a file 从文件中读入作为sdtin
-e flag ,注意有的时候可能会是-E,flag必须是一个以空格分隔的标志,当xargs分析到含有flag这个标志的时候就停止。
-p 当每次执行一个argument的时候询问一次用户。
-n num 后面加次数,表示命令在执行的时候一次用的argument的个数,默认是用所有的。
-t 表示先打印命令,然后再执行。
-i 或者是-I,这得看linux支持了,将xargs的每项名称,一般是一行一行赋值给 {},可以用 {} 代替。
-r no-run-if-empty 当xargs的输入为空的时候则停止xargs,不用再去执行了。
-s num 命令行的最大字符数,指的是 xargs 后面那个命令的最大命令行字符数。
-L num 从标准输入一次读取 num 行送给 command 命令。
-l 同 -L。
-d delim 分隔符,默认的xargs分隔符是回车,argument的分隔符是空格,这里修改的是xargs的分隔符。
-x exit的意思,主要是配合-s使用。。
-P 修改最大的进程数,默认是1,为0时候为as many as it can ,这个例子我没有想到,应该平时都用不到的吧。

1.3 传输文件

  • Linux/Unix同Window文件传输

    • rz,sz是Linux/Unix同Window文件传输的命令行工具,进行Zmodem。使用方法如下:
    • linu端需要安装rz/sz命令,也就是lszrz包;
    • Window端需要支持ZModem的telnet/ssh客户端(Xshell,SecureCRT支持)
    • 运行命令rz,即接收Windows文件,xshell就会弹出文件选择对话框,选好文件后关闭对话框,文件就会上传到linux里的当前目录。
    • 运行命令sz file,就是发文件到Windows上(保存的目录是可以配置),比ftp命令方便多,而且服务器不用再开FTP服务;
    • 提示:rz、sz命令 系统可能没有安装,软件包的名字是[rzsz]
  • Linux间文件复制

    • scp是linux系统下基于ssh登录进行安全的远程文件拷贝命令
    • sync/scp相关文章

1.4 文件类其他命令

  • find 命令用来在指定目录下从查找文件

  • pwd查看当前目录

  • pwdx查找程序执行路径

  • mount 命令是经常会用命令,用于挂载Linux系统外文件

1.5 进程类

  • ps命令用于显示当前进程状态

  • top命令用于显示实时process进程状态
    可以看到load average/CPU使用率/内存使用率

  • kill关闭进程

  • nohup 不挂断运行命令

  • lsof 命令用于查看进程打开文件,打开文件进程,进程打开的端口(TCP/UDP)

1.6 系统类

  • hostmane 命令用于显示和设置系统主机名称

  • uptime命令能够打印系统总共运行市场和系统平均负载

    load average(系统平均负载):
      load average 就是一定 时间内计算机有多少active_taks,也就是计算机的任务执行队列的长度,cpu计算 的队列。load average计算,有多少核心即为于多少负载原则;

  • nproc命令查看CPU数量

  • pssh工具箱
    pssh是可以并发在多台机器上批量执行命令的工具,系统默认不安装;包括一下命令:

    • pssh:在远程多台主机上并行运行命令
    • pscp:把文件并行复制到多台远程主机上
    • prsync:使用rsync协议本地文件同步到远程多台主机上
    • pnuke:在远程多台主机上并行killall某进程
    • pslurp:把文件从远程多台主机上复制到本地主机上
  • pssh命令

  • 远程复制

  • iostat用于输出CPU和磁盘I/O相关统计信息

2.NTP

2.1 NTP介绍

  Network Time Protocol(NTP,网络时间协议)用于同步它所有客户端时钟的服务;它可以再大规模的设备范围内同步矫正
时间到ms级别精度;在网络稳定的局域网内,精度甚至可以达到微秒级;

2.2 NTP时间来源

  • GPS、北斗等卫星系统
  • 原子钟
  • 移动基站
  • 恒温晶振

2.3 NTP配置

  • 安装NTP服务

    • 检查NTP服务是否安装
      rpm -q ntp
    • 安装NTP服务
      yum install ntp
  • 配置NTP客户端

    • NTP配置文件
      /etc/ntp.conf

    • 内容查看
      查看server开关配置内容
      server ntp1.tbsite.net iburst minpoll 4 maxpoll 6
      server ntp2.tbsite.net iburst minpoll 4 maxpoll 6

  • NTP服务管理

    • 服务状态查看
      service ntpd status
    • 服务启用
      service ntpd start
    • 服务重启
      service ntpd restart
    • 服务开启启动
      chkconfig ntpd on
  • NTP常用命令

    • 查询NTP服务器时间
      ntpdate -q ntp1.aliyun.com

    • 查询NTP时间同步情况
      ntpq -p

3.软件管理

3.1 yum源配置

  • yum配置文件
    • /etc/yum.repos.d/*.repo
  • 配置文件内容
    • [名称]-yum源的名称
    • name-yum源的描述信息
    • baseurl-yum源地址
    • gpgcheck是否检查GPGKEY
    • enabled是否可用

3.2 yum常用命令

3.3 rpm软件管理

  • rpm查询
    使用命令rpm -q来查询已安装软件包的数据库;
    rpm -q foo 显示foo软件包的包名,版本号和发行号;
    rpm -q foo 除了指定软件包名以外,还可以连同-q使用以下选项来指明要查询哪些软件包信息;

    -a 查询所有已安装软件包
    -f 将查询包含有文件的软件包
    -l 查询软件包安装在哪些目录
    -i 查询软件包的详细信息
    -p 查询软件包中有哪些文件

  • rpm卸载
    rpm -e foo
    注意这里使用软件包名字,而不是软件包文件的命令;版本号也不需要写;生产环境不允许删除操作;

4.DNS查询

4.1 DNS查询

  • dig命令

  • nslookup命令

4.2 DNS问题排查思路

  • 用户侧不能访问,运维侧可访问
    一般用户DNS设置问题
  • 用户侧和运维侧同时不能访问
    检查DNS服务能否ping通
    查看DNS服务器的53端口是否可用telnet 53

5.日志查看

5.1 日志查看命令

  • last 命令用于显示系统开机以来或是从每月初登入者的讯息
    last
    last username

  • lastb命令用于列出登入系统失败的用户相关信息
    lastb

  • 查看历史命令
    history

  • 查看日志文件
    cat
    tac
    tail -f 或tailf

5.2 常用命令

赞赏

微信赞赏支付宝赞赏

发表评论

邮箱地址不会被公开。 必填项已用*标注