linux文本编辑器

linux文本编辑器linux常见服务一.文本编辑器vivim是vi增强版vim需要安装sudoapt-get-yinstallvimvim的三种工作模式1编辑模式命令模式=>编辑模式iaos按键作用i在光标当前位置插入文本a光标的下一个位置插入文本A当前行的行尾插入文本S…

大家好,又见面了,我是你们的朋友全栈君。

linux常见服务

一. 文本编辑器

vi vim是vi增强版

vim需要安装

sudo apt-get -y install vim
# macOS使用brew安装

vim的三种工作模式

1 编辑模式

命令模式=>编辑模式iaos

按键 作用
i 在光标当前位置插入文本
a 光标的下一个位置插入文本
A 当前行的行尾插入文本
S 删除当前行内容,重新输入
s 删除光标当前位置的字符,开始输入
o 在当前的下一行开始一个新行开始输入

2 命令模式

编辑模式=>命令模式 请按esc

按键 作用
H 向左移动一个字符
j 向下移动一行
k 向上移动一行
l 向右移动一个字符
( 移动到块首
) 移动到块尾
gg 移动第一行
G 移动尾行
ngg 移动到第n行 n是一个数字
yy 复制光标当前行
nyy 复制n行
p 黏贴
np 100p 黏贴n次
dd 删除一行
ndd 删除n行
u 撤销上一次的操作
shift + 6 移动到本行行首
shift+ 4 移动到本行行尾
ctrl + r 恢复前一个被撤销的操作
. 重复前一个操作

3 底行模式

命令模式=》底行模式 按 : 或者 /

按键 作用
:w 保存,不退出
:q 不保存,退出
:q! 强制退出,不保存
:wq 保存并退出
:x 保存并退出
:set nu 显示行号
:set nonu 不显示行号
:n 移动到指定的行
/字符串 (回车) 搜索指定字符串 n找下一个,N找上一个
?字符串 从下往上找,n往上找,N往下找
:s/要找的字符串/要替换的字符串 替换光标当前行的找到的第一个字符串
:s/要找的字符串/要替换的字符串/g 替换光标当前行的找到的所有字符串
:%s/要找的字符串/要替换的字符串 替换每一行第一个找到字符串
:%s/要找的字符串/要替换的字符串/g 全文替换

二. 网络管理

  1. ifconfig

    配置和显示Linux内核中网络接口的网络参数。

    #1 显示网络信息
    [root@localhost ~]# ifconfig
    ens33      Link encap:Ethernet  HWaddr 00:1C:42:14:7A:DD  
              inet addr:192.168.3.46  Bcast:192.168.3.255  Mask:255.255.255.0
              inet6 addr: fe80::21c:42ff:fe14:7add/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:351142 errors:0 dropped:0 overruns:0 frame:0
              TX packets:748 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000 
              RX bytes:81649700 (77.8 MiB)  TX bytes:94340 (92.1 KiB)
    
    lo        Link encap:Local Loopback  
              inet addr:127.0.0.1  Mask:255.0.0.0
              inet6 addr: ::1/128 Scope:Host
              UP LOOPBACK RUNNING  MTU:65536  Metric:1
              RX packets:0 errors:0 dropped:0 overruns:0 frame:0
              TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:0 
              RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)
    重要数据说明:
        inet addr: ipv4地址    inet6: ipv6地址
        HWaddr:  mac地址     Mask: 子网掩码
        UP:代表网卡开启   RUNNING:代表网卡的网线被接上   MULTICAST:支持组播 MTU:最大传输单元 (1500字节)。
        
    #2. ifconfig ens33 查看指定网卡信息
    #3.启动关闭网卡
    ifconfig ens33 up  #启动网卡
    ifconfig ens33 down   #关闭网卡
    
    # 重启网络
    /etc/init.d/network restart
    
  2. ifup和ifdown 启动和关闭网卡

    需要配置/etc/network/interfaces,不建议使用这两个命令
    
  3. ip

    ip命令用来显示或操纵Linux主机的路由、网络设备、策略路由和隧道,是Linux下较新的功能强大的网络配置工具。

    ip [选项] [参数]
    选项: -s 显示详细信息
    
    #1.用ip命令显示网络设备的运行状态
    ip link list
    
    #2 查看网络地址
    ip a
    ip address show
    ip address show  ens33  #查看具体网卡的ip地址
    
    #3 修改接口状态
    ip link set enss33 up    #开启网卡
    ip link set ens33  down #关闭网卡
    
    #4显示路由信息
    ip route show
    
  4. ping

    ping命令用来测试主机之间网络的连通性

    用法:  ping [参数] [主机名或IP地址]
    参数:
        -c n     执行指定次数 n的ping命令
        -b       测试与网关IP的连通性
    #1.查看于百度的联通型
    [root@localhost ~]# ping -c 3 www.baidu.com
    PING www.a.shifen.com (119.75.213.61) 56(84) bytes of data.
    64 bytes from 119.75.213.61: icmp_seq=1 ttl=56 time=6.96 ms
    64 bytes from 119.75.213.61: icmp_seq=2 ttl=56 time=6.62 ms
    64 bytes from 119.75.213.61: icmp_seq=3 ttl=56 time=6.14 ms
    
    --- www.a.shifen.com ping statistics ---
    3 packets transmitted, 3 received, 0% packet loss, time 3126ms
    rtt min/avg/max/mdev = 6.141/6.577/6.963/0.337 ms
    
    #2.查看于网关的连通性
    [root@localhost ~]# ping -b www.baidu.com
    PING www.a.shifen.com (119.75.216.20) 56(84) bytes of data.
    64 bytes from 119.75.216.20: icmp_seq=1 ttl=56 time=5.29 ms
    64 bytes from 119.75.216.20: icmp_seq=2 ttl=56 time=8.47 ms
    64 bytes from 119.75.216.20: icmp_seq=3 ttl=56 time=14.2 ms
    
    --- www.a.shifen.com ping statistics ---
    3 packets transmitted, 3 received, 0% packet loss, time 3499ms
    rtt min/avg/max/mdev = 5.294/9.342/14.257/3.711 ms
    
  5. netstat 查看网络连接状况

    netstat  -an
      -n  显示端口
      -p  显示进程
      -t tcp
      -u udp
      -a  显示所有
    #1.sudo netstat -nt       显示所有已建立的TCP连接
    Active Internet connections (w/o servers)
    Proto Recv-Q Send-Q Local Address               Foreign Address             State     
    tcp        0      0 10.0.112.235:22             10.0.112.252:57530          ESTABLISHED 
    tcp        0     64 192.168.3.46:22             192.168.3.50:58677          ESTABLISHED 
    
    #2. sudo netstat -nu      显示已建立的UDP连接
    #3. sudo netstat -ntpa     显示TCP端口号的使用情况
    

三. 进程管理

  1. ps

    Linux中的ps命令是Process Status的缩写。ps命令用于报告当前系统的进程状态。可以搭配kill指令随时中断、删除不必要的程序。

     用法:  ps  [选项参数]  [用户名](可选)
       参数:
        -a -e 显示所有进程
        -u  显示指定用户的进程
         x :通常与 a 这个参数一起使用,可列出较完整信息。
     #1.ps -e|more -20      显示所有进程,每屏20个
     #2.ps -u root|more -10   显示指定用户的进程信息
     #3. ps -ef|grep kworker   过滤指定信息
     #4. ps -aux 列出目前所有的正在内存当中的程序
     USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
     root         1  0.0  0.1  19232  1496 ?        Ss   00:23   0:00 /sbin/init
     root         2  0.0  0.0      0     0 ?        S    00:23   0:00 [kthreadd]
     root         3  0.0  0.0      0     0 ?        S    00:23   0:00 [migration/0]
     PID 进程号   %CPU  cpu的占用率   %MEM  内存的占用率  VSZ 占用虚拟内存的量  RSS 驻留内存的量
     TTY 进程的控制终端,?表示不是从终端进入的。   STAT 进程状态(R就绪 S可中断的休眠态 T暂停执行)
     START 进程开始时间  TIME已经执行的时间
     
     #杀死进程
     kill [参数] 进程号
     #1. kill 2 杀死指定进程号的进程
     #2. kill -9 2 强制杀死指定进程号的进程
     
     #杀死指定进程名的进程
     killall -TERM  进程名称
    
  2. top

    top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。

    用法: top
    使用q退出
    top - 03:32:26 up  3:08,  2 users,  load average: 0.03, 0.04, 0.05
    Tasks: 100 total,   1 running,  99 sleeping,   0 stopped,   0 zombie
    Cpu(s):  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
    Mem:   1016160k total,   163660k used,   852500k free,     9412k buffers
    Swap:  2064380k total,        0k used,  2064380k free,    51072k cached
    
      PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                   
        1 root      20   0 19232 1496 1224 S  0.0  0.1   0:00.95 init                     
        2 root      20   0     0    0    0 S  0.0  0.0   0:00.03 kthreadd                 
        3 root      RT   0     0    0    0 S  0.0  0.0   0:00.05 migration/0               数据说明:
    03:32:26    当前时间
    up 3:08    系统运行时间,格式为时:分
    2 user    当前登录用户数
    load average: 0.03, 0.04 0.05    系统负载,即任务队列的平均长度。三个数值分别为 1分钟、5分钟、15分钟前到现在的平均值。
    
    第二、三行为进程和CPU的信息。当有多个CPU时,这些内容可能会超过两行。内容如下:
    total 进程总数         running 正在运行的进程数       sleeping 睡眠的进程数
    stopped 停止的进程数   zombie 僵尸进程数              Cpu(s): 
    
    最后两行为内存信息。内容如下:
    Mem:
    191272k total 物理内存总量      173656k used 使用的物理内存总量    17616k free    空闲内存总量
    22052k buffers    用作内核缓存的内存量   
    Swap: 
    192772k total    交换区总量      0k used    使用的交换区总量    192772k free    空闲交换区总量
    
    进程信息区统计信息区域的下方显示了各个进程的详细信息。首先来认识一下各列的含义。
    序号  列名    含义
    a    PID     进程id
    b    PPID    父进程id
    c    RUSER   Real user name
    d    UID     进程所有者的用户id
    e    USER    进程所有者的用户名
    f    GROUP   进程所有者的组名
    g    TTY     启动进程的终端名。不是从终端启动的进程则显示为 ?
    h    PR      优先级
    i    NI      nice值。负值表示高优先级,正值表示低优先级
    j    P       最后使用的CPU,仅在多CPU环境下有意义
    k    %CPU    上次更新到现在的CPU时间占用百分比
    l    TIME    进程使用的CPU时间总计,单位秒
    m    TIME+   进程使用的CPU时间总计,单位1/100秒
    n    %MEM    进程使用的物理内存百分比
    o    VIRT    进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
    p    SWAP    进程使用的虚拟内存中,被换出的大小,单位kb。
    q    RES     进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
    r    CODE    可执行代码占用的物理内存大小,单位kb
    s    DATA    可执行代码以外的部分(数据段+栈)占用的物理内存大小,单位kb
    t    SHR     共享内存大小,单位kb
    u    nFLT    页面错误次数
    v    nDRT    最后一次写入到现在,被修改过的页面数。
    w    S       进程状态(D=不可中断的睡眠状态,R=运行,S=睡眠,T=跟踪/停止,Z=僵尸进程)
    x    COMMAND 命令名/命令行
    y    WCHAN   若该进程在睡眠,则显示睡眠中的系统函数名
    z    Flags   任务标志,参考 sched.h
    
  3. lsof

    lsof命令是一个列出当前系统打开文件的工具。

    需要安装命令
    yum -y install lsof
    
    #1、直接输入命令 lsof
    终端下输入lsof就会显示系统打开的所有文件。由于lsof会访问核心内存和各种文件,必须以root用户来执行该命令。
    

四. 登录状态

  1. uname

    uname命令用于显示系统信息

    #显示linux核心版本号
    uname -r 
    
    #显示系统所有信息
    uname -a
    
    #显示操作系统版本
    uname -v
    
  2. hostname

    显示或设置主机名称

    #显示主机名
    $ hostname
    
    #临时设置主机名
    $ sudo hostname hello
    
    #永久设置主机名
    $ vim /etc/hostname #ubuntu的主机名在/etc/hostname文件中,其他liux可能会在/etc/sysconfig/network中
    
  3. whoami

    whoami命令用于显示自身用户名称。

  4. who

    显示当前登录用户

    who [-aHbl]
       -H 显示标题
       -a 显示所有信息
       -b 显示最近登录时间
       -l 显示系统登录时间
    $ who -Hl
    名称   线路       时间           空闲  进程号 备注
    登录   tty1         2018-03-30 14:17               952 id=tty1
    
    $ who -b
     系统引导 2018-03-30 14:17
     
    $ who -a
               系统引导 2018-03-30 14:17
    登录     tty1         2018-03-30 14:17               952 id=tty1
               运行级别 5 2018-03-30 14:17
    python   + tty7         2018-03-30 14:17 02:34        1431 (:0)
    
  5. w

    用来查看登录者的信息及他们的行为

    w 命令:执行这项指令可得知目前登入系统的用户有那些人,以及他们正在执行的程序。单独执行w 命令会显示所有的用户,您也可指定用户名称,仅显示某位用户的相关信息。
    
    语法:w [-fhlsuV][用户名称]
    linux w 命令参数:
        -f  开启或关闭显示用户从何处登入系统。
        -h  不显示各栏位的标题信息列。
        -l  使用详细格式列表,此为预设值。
        -s  使用简洁格式列表,不显示用户登入时间,终端机阶段作业和程序所耗费的CPU时间。
        -u  忽略执行程序的名称,以及该程序耗费CPU时间的信息。
    
    #1. 常见用法,直接使用
    [root@localhost csl]# w
     03:44:07 up  3:20,  2 users,  load average: 0.07, 0.08, 0.06
    USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
    root     tty1     -                01:41    1:00m  0.13s  0.13s -bash
    root     pts/1    192.168.3.50     02:34    0.00s  0.18s  0.00s w
    
  6. last

    显示用户最近登录信息

    #显示用户最近登录信息,只显示10行
    $ last -10  
    python   tty7         :0               Fri Mar 30 14:17    gone - no logout
    reboot   system boot  4.13.0-37-generi Fri Mar 30 14:17   still running
    python   tty7         :0               Thu Mar 29 20:59 - down   (17:17)
    reboot   system boot  4.13.0-37-generi Thu Mar 29 20:49 - 14:17  (17:28)
    python   pts/18       10.0.103.229     Thu Mar 29 14:53 - 18:00  (03:07)
    python   pts/17       10.0.136.238     Thu Mar 29 09:48 - 17:05  (07:17)
    python   pts/17       10.0.136.238     Thu Mar 29 09:36 - 09:48  (00:11)
    python   tty7         :0               Thu Mar 29 09:36 - down   (08:24)
    reboot   system boot  4.13.0-37-generi Thu Mar 29 09:36 - 18:00  (08:24)
    python   pts/18       10.0.136.238     Thu Mar 29 09:17 - 09:35  (00:17)
    

五. linux的启动

1 开机BIOS加载

2 读取MBR引导记录

3 加载linux内核

4 加载init进程,实现系统初始化,init进程是其他所有进程的父进程

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-N5BsitFI-1573453126617)(runlevel.png)]

5 执行/etc/init/rc-sysinit.conf,设置启动级别

6 启动内核

7 执行不同运行级别脚本程序,视级别的不同执行rc0~rc6下的脚本来完成相应的初始化和启动工作

8 执行/etc/init.d/rc.local ,可以把要自动加载的程序写到这个脚本里

9 用户登录

显示当前运行模式的命令:
runlevel
who -r

##六. 计划任务

在指定的时间做指定的事情,周期性的事情。需要用户有相应的权限,否则无法操作

vim /etc/crontab 打开定时任务

crontab -l 查看定时任务 /etc/crontab 里边的除外

crontab -e 编辑定时任务

分 小时 日 月 周 操作 解释

0-59 0-23 1-31 1-12 0-6

0 0 * * * mysqldum 每天0时备份数据库

0 2 * * 0 sync 每个星期天2点中做文件同步

0 0 15 * * /usr/local/jsgz.py 每个月的15号0时计算工资

0 */1 * * * sh 每个1个小时执行脚本

0 8,12,18 * * * daka.py 每天的8点、12点、18点打卡

crontab -r 清空所有定时任务 只能清除crontab -e产生的定时任务

清除指定定时任务 crontab -e 删除指定行

service cron start/restart/stop #启动、重启、停止定时任务

  • 实时查看日志
tail -f  文件名
watch -d -n 秒数  cat /8.txt #带高亮

七. 软件安装

7.1 压缩与解压

windows常见的压缩包:rar zip 7zip iso

linux常见的压缩包: zip gz bz2 tar

  1. gz压缩和解压

    如果没有gzip,用apt安装
    
    # apt-get  install gzip
    
    gzip 文件名1  文件名2 #多文件压缩,自动生成对应压缩包  文件名.gz  不能压缩目录  删除原件
    gzip -d 压缩包1  压缩包2   #支持批量解压,删除原件
    
  2. bz2压缩和解压

    压缩
    bzip2 文件名1  文件名2   #支持批量压缩 不支持压缩目录 自动升成 文件名.bz2
    
    解压
    bzip2 -d 包名1  包名2   #自动删掉原件
    
  3. tar压缩和解压

    tar [option]
       -c 打包
       -x 解包
       -v 可视化
       -f指定文件名
       -t 查看包里的东西
       -z 用gzip对包进行压缩
       -j 用把bzip2对包进行压缩
    
       tar -cvf 包名   文件名1 文件名2  目录1  #不删除原件,可以打包目录
       tar -xvf 包名   #不删除原件
    
       打包并压缩
       tar -zcvf 包名  文件名1 文件名2  目录1 
       tar -jcvf 包名  文件名1 文件名2  目录1
    
       解压
       tar -zxvf  包名
       tar -jxvf  包名
    
  4. zip压缩和解压

    apt-get -y install zip unzip
    
    zip 包名  文件名或目录
    unzip 包名
    

7.2 软件的安装

  1. apt

解决deb复杂的依赖关系

查看软件包信息 		  sudo apt-cache showsrc 包名
获得源码       		     sudo apt-get source 包名
安装软件     		     sudo apt-get install 包名
删除软件                  sudo apt-get remove 包名
获取新的软件包列表         sudo apt-get update
升级有可用更新的软件包     sudo apt-get upgrage
安装apache
#1 更新软件列表
sudo apt-get update

#2 安装
sudo apt-get install apache2

#3 启动服务
sudo  /etc/init.d/apache2 start  # start | restart | stop
或
service apache2 start

# 配置虚拟站点
cd /etc/apache2
#在sites-available目录下配置自己的虚拟站点
cp 000-default.conf   www.jxc.com.conf

cd ../sites-enabled
ln -s ../sites-available/www.jxc.com.conf  www.jxc.com.conf

#配置网站
cd /var/www/html/jxc
vim index.html

#重启apache服务
sudo /etc/init.d/apache2 restart

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/132822.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • python ==和is_python中is是什么意思

    python ==和is_python中is是什么意思前置知识点当我们创建一个对象时,我们要知道它内部干了些什么1.创建了一个随机id,开辟了一片内存地址2.自动声明了这个对象的类型type3.给这个对象赋值value小例子a=1pri

  • python opencv入门 光流法(41)

    python opencv入门 光流法(41)内容来自OpenCV-PythonTutorials自己翻译整理目标:了解光流的概念,使用lucas-kanade估算方法使用cv2.calcOpticalFlowPyrLK()方法来追踪视频中的特征点光流:光流的概念是指在连续的两帧图像当中,由于图像中的物体移动或者摄像头的移动而使得图像中的目标的运动叫做光流。(说简单点,考虑摄像头不会动的情况,就是一个视频当中有一个…

  • 安全帽识别系统的应用

    安全帽识别系统的应用应用背景施工现场,安全帽作为一种最常见和实用的个人防护用具,能够有效地防止和减轻外来危险源对头部的伤害。然而,长期以来,我国施工区作业人员普遍存在综合素质低、安全意识不强的问题,尤其缺乏基础防护设施(如安全帽)的佩戴意识,大大增加了作业风险。传统的人工监管存在如下缺点:一、人力成本增加;二、人工长时间监控易疲劳,致使监控的疏忽、遗漏或者误判安全隐患;三、人工监控和人员情绪、状态、工作经…

  • csgo开箱网站可以取回的_csgo官方开箱网站在哪里

    csgo开箱网站可以取回的_csgo官方开箱网站在哪里Incsgo,能取回的开箱网.我们为Incsgo爱好者们倾力打造品质卓越的Incsgo开箱平台,Incsgo抽奖网站,安全可靠,玩法多样。立即注册领取奖金,库存充足,全新箱子,一秒取回。Incsgo官方网站-能够取回的csgo开箱子网站官方链接:www.incsgo.gg注册登录自动免费获得$1.00美金优惠码:csgogo(充值使用csgogo可增加5%充值金额)支付:微信支付宝状态:直接取回…

  • magisk下载里显示没有模块_太极Magisk模块

    magisk下载里显示没有模块_太极Magisk模块太极Magisk模块是一款很多网友都在找的安卓模块更改工具,可以将普通版的免root模式的太极app升级成Magisk模式,操作也非常简单,感兴趣的朋友欢迎前来下载!太极Magisk模块功能1.太极完全支持Android9.0。2.太极能以免Root/免刷机模式运行。3.太极不影响全局。可以只对特定的应用开启Xposed功能,无需使用Xposed的APP运行起来就跟系统没有Xp…

  • python和c++哪个好_python取消注释快捷键

    python和c++哪个好_python取消注释快捷键工欲善其事必先利其器,Python开发利器Pycharm常用快捷键以及配置如下,相信有了这些快捷键,你的开发会事半功倍一常用快捷键编辑类:Ctrl+D复制选定的区域或行Ctrl+Y删除选定的行Ctrl+Alt+L代码格式化Ctrl+Alt+O优化导入(去掉用不到的包导入)Ctrl+鼠标简介/进入代码定义Ctrl+/行注释、取消注释Ctrl+左方括…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号