zoukankan      html  css  js  c++  java
  • linux操作系统使用中的一些总结

    VIM常用命令

    gg   //到第一行

    (N)G   //到第n行(N为整数)

    G    //到最后一行

    0    //到行头

    $  //到行尾

    (N)dd  //删除N行,并将内容保存到粘贴板

    p  //将粘贴板中内容复制到当前位置

    u  //撤销操作

    ctrl+r  //恢复撤销的操作

    ESC+ :q!    // 退出不保存

    ESC+ :qa!    // 强行退出所有正在编辑的文件

    ESC+ :wq  //保存修改后退出

    :set nu  //设置行号

    :

    :set nonu   //取消行号

    查看linux内核版本等信息

    vmware-hgfsclient   //查看物理主机和虚拟机共享的盘

    vmhgfs-fuse .host:/F  /mnt/hgfs    //将物理磁盘F 挂载到linux的/mnt/hgfs目录下

    KALI安装搜狗拼音输入法(曾经困扰过我很久)

    1、卸载ibus及其所有组件
    2、更新源:apt-get update
    3、下载小企鹅输入法框架下的一些依赖组件:

    apt-get install fcitx-libs  fcitx-libs-qt  fcitx-bin  fcitx-data fcitx-modules  fcitx-module-dbus  fcitx-module-kimpanel  fcitx-module-lua  fcitx-module-x11  fcitx  fcitx-tools  fcitx-ui-classic  fcitx-libs-gclient

    4.安装fcitx图形化界面:

    apt-get install fcitx-config-gtk2 fcitx-config-gtk3

    5、到搜狗输入法官网下载对应版本的安装包,官网下载地址:http://pinyin.sogou.com/linux/?r=pinyin,如果系统是64位则下载的是sogoupinyin_2.1.0.0086_amd64.deb

    6、使用dpkg -i 安装:

    dpkg -i sogoupinyin_2.1.0.0086_amd64.deb

    7、如果有报错,使用apt-get -f install进行依赖包的安装,然后在执行步骤六进行安装。
    8、安装成功后重启,Ctrl+空格可以切换输入法。

    linux的一些系统知识

    目录结构

    linux三级目录:根目录,一级目录,二级目录

    根目录下的bin,sbin

    usr下 的bin,sbin     这四个目录都用来保存系统命令

    bin内命令可由root和普通用户执行

    sbin下命令只能由root用户执行

    boot //启动目录

    etc  //系统默认配置文件

    所有存储设备都要挂载后才能在linux上使用

    proc     //直接写入内存

    sys     //两个目录不能直接操作,这两个目录保存的是内存的挂载点

    root相关信息记录在 /etc/passwd

    个人密码记录在 /etc/shadow

    linux组名记录在 /etc/group

    chgrp adm 1.sh //改变文件的属主为adm 前提是 被改变后的组名必须在/etc/group档案内存在

    chown bin 1.sh //改变文件的拥有者为bin  前提是  被改变后的用户名必须在/etc/passwd中存在

    chown admin:bin  1.sh //同时改变所有者和属主

    chown -R root:bin 1.sh //递归改变档案或者目录发所有者和属组

    硬链接

    (一个教室两个门,类似于只指向同一个 分区表(每一行包括inode,文件时间,存储位置等信息)即每一行都包括一个档案信息 的指针) 比较隐蔽不易发现

    1.拥有相同i节点和存储block块,可以看做同一个文件

    2.可通过i节点识别

    3.不能跨分区

    4.不能针对目录使用

    5.删除原文件,硬链接依旧能显示原来的内容

    ln   /root/1.sh  /tmp/2.sh

    ls   -l   /root/1.sh  //查看档案的i节点

    软链接

    ln     -s   /root/1.sh  /tmp/2.sh

    1.等于windows的快捷方式

    2.软链接拥有自己的I节点和Block块,但是数据块中只保存原文件的文件名和I节点号,并没有实际的文件数据

    sb为原文件  csb为软链接

    3.lrwxrwxrwx   文件属性l中代表软链接 软链接文件权限都为777

    4.删除原文件,软链接无法使用

    5.软链接一定要写绝对路径,否则软链接后的文件只会在当前目录下查找

    ln  -s   1.sh   /tmp/   //会报错

    ln  -s   /root/Desktop/1.sh  /tmp    //需要写绝对路径   

     基本命令

    linux系统下压缩和解压缩命令

    1.zip压缩

    压缩文件

    格式: zip 压缩之后的文件名  被压缩的原文件

    压缩目录

    格式:zip  -r  压缩文件名  被压缩的目录

    解压缩 unzip  movie.zip  (解压缩文件和目录都是)

    2.gz

    gzip  源文件   //压缩为.gz格式的压缩文件,源文件会消失

    gzip  -r  目录   //压缩目录下所有子文件,但是不能压缩目录

    解压缩

    gzip  -d 需要解压文件

    gunzip 需要解压的文件

    gunzip  -r  需要解压的目录

    3.bz2(不能压缩目录)

    bzip2  要压缩的文件     //压缩为.bz2格式,不保留源文件

    bzip2 -k 源文件         //压缩之后保留源文件

    解压

    bzip2  -d   需解压的文件   //-k保留压缩的文件

    bunzip2     需解压的文件    //-k 保留压缩的文件

    4.打包和解打包命令

     

    .tar.gz的压缩格式

     

    压缩多个文件 tar   -zcvf  /tmp/test.tar.gz   jp  abc.cfg 

    //将jp和abc.cfg两个文件同时压缩到指定目录

    tar  -ztvf  test.tar.gz  //查看压缩包 不解压

    压缩

    tar   -jcvf  压缩包名.tar.bz2  源文件

    -j   压缩为.tar.bz2格式 (包括了将目录打包的过程)

    解压缩

    tar  -jxvf  压缩包名.tar.bz2

    -x 解压缩.tar.bz2格式  

    tar  -jxvf  1.movie.tar.bz2   -C   /tmp   

     //指定解压缩位置

    GREP命令(在每个 FILE 或是标准输入中查找 PATTERN)

    '^#'      ^代表行首 #代表行尾  整体代表空行
    dmesg  |  grep  -n  --color=auto  -A3  -B2  'eth'
    // -n 显示行号 将grep挑选出的关键字颜色标出  显示-A3关键字后3行  -B2显示关键字前2行  搜索含有关键字'eth'的行
    
    grep  -n  'the'  grep2.txt
    //显示含有the的行
    
     grep  -n  -v  'the'  grep2.txt
    //显示不含有the的行
    
    grep  -n -i  'the'  grep2.txt
    //显示含有 the(大小写都包括)的行
    
    grep  -n  't[ae]st'  grep2.txt
    //显示含有 tast 或则test的行
    
    
    grep  -n  '[^g]oo'  grep2.txt
    //显示oo前面不含g的
    
    grep  -n  '[^a-zA-Z]ww'  grep2.txt
    //显示ww前面不含字母的
    
    grep  -n  '0-9'        grep2.txt
    //显示含有数字的一行
    
    grep  -n  '^the'  grep2.txt
    //显示行首含有the的行
    
    grep  -n   '^a-z'  grep2.txt
    //显示行首小写字母开头
    
    
    grep  -n   '^[^a-zA-Z]'  grep2.txt
    //显示行首不要是字母开头
    
    cat /etc/fstab | grep -n '^[^#]'
    //显示不要注释的行[^#]代表行首是注释 '^ '中的^表示不是
    
    grep  -n   '.$'    grep2.txt
    //显示行尾以 . 结尾的行
    
    grep  -n   '^$'  grep2.txt
    //显示空行
    
    grep  -n -v  '^$'  grep2.txt     |  grep  -v  '^#'
        //输出结果不包含空白行和注释行
    
    grep   -n   'g.*g'    grep2.txt
    //输出显示g.....g的行  *表示显示0到无数个前面的一个字符
    
    egrep  -n  'go+d'  grep.txt
    //god good  gooood   +重复一个或一个以上字符
    
    egrep  -n  'go?d'  grep.txt
    //god  gd   重复一个或0个字符
    
    egrep  -n  'gd|good'    grep.txt
    // gd或good
    
    
    cat sed.txt |  sed  '2,5d'
    //删除2到5行
    
    cat sed.txt  |  sed '2a  drink  tea'
    //在第2行之后加上 drink tea 
    
    cat  sed.txt  |  sed '2i  drink  tea'
    //在第2行之前加上 drink tea
    
    cat  sed.txt  |  sed'2,5c  line2 to 5 has been replacd'
    //将第2行到第5行内容用line2 to 5 has been replacd取代
    
    cat sed.txt  |  sed  -n '5,7p'
    //仅列出第5行到第7行的内容
    
    printf '%s	 %s	 %s	 %s	 %s	 
    ' $(cat grep.txt)
    // %s不固定字符串,字符串间用tab分隔符处理
    
    
    awk字段处理
    cat  grep.txt  |  awk '{print  $1  "	"  $3}'
    //截取grep.txt的第一列和第三列变量并用制表符隔开
    
    
    cat  /etc/passwd  |  awk  '{FS=":"}$3<10{print $1 "	"  $3}'
    //以冒号 ":" 作为字段分隔 截取满足第三个变量小于10的条件的行 输出第一个和第三个变量并用制表符隔开 

    chmod改变档案权限命令

     1 chmod 770  1.sh   //  -rwxrwx---
     2 chmod  u=rwx,g=rwx,a=---  1.sh
     3 chmod  u+w  1.sh  //给1.sh 所有者增加修改权限
     4 chmod  g-w  1.sh  //给1.sh 属组去除修改权限
     5 chmod  u+w,g+x  //给1.sh 所有者增加修改权限 给属主增加执行权限
     6 chmod   a+w  1.sh  //给所有身份增加修改权限
     7 
     8 mkdir -p  /home/bird/testing/test1
     9 rmdir  -p  /home/bird/testing/test1  //只能删除空目录
    10 rm  -r  /home   //递归删除目录
    11 cp -s bashrc  bashrc_slink  // -s符号链接
    12 cp -l bashrc  bahsrc_slink  //-l 实体链接
    13 mv  bashrc  mvtest  //重命名
    14 mv  bashrc1  bashrc2 mvtest2 //同时复制两个档案到mvtest2目录下
    15 more  //查看  /字符串  只能向下搜寻字符串
    16 less   //  /字符串 向下搜寻字符串   ?字符串  向上搜寻字符串
    17 ls -l     /etc/man.config   //modification time内容数据变更时时间更新
    18 ls -l --time=ctime  /etc/man.config    //status time 权限属性变更时时间更新(目前时间)
    19 ls -l --time=atime  /etc/man.config    //access time 内容被读取时时间更新
    20 touch   //建立空档案 更改已经建立档案时间(modificaiton time)
    21 
    22 新建的档案预设权限666(无执行权限 因为档案不需要执行)
    23 新建的目录预设权限777
    24 umask  //新建一档案或者目录默认扣掉的分值
    25 0022   所以默认新建档案是444 -rw-r--r--   新建默认目录是755 drwxr-xr-x
    26 umask  002//设置拿掉的是档案和目录的其他人的write权限
    27 有助于文档安全
    28 chattr  +i  NAU1 
    29 //chattr修改隐藏属性 不能被写入和删除,不能改名,设定链接
    30 chattr  -i   NAU1
    31 //去除隐藏属性
    32 chattr  +a  NAU1
    33 //档案只能增加数据 不能删除也不能修改数据
    34 lsattr  //查询隐藏属性
    35 
    36 SUID权限
    37 • SUID 权限仅对二迚制程序(binary program)有效; 
    38 • 执行者对亍该程序需要具有 x 癿可执行权限; 
    39 • 本权限仅在执行该程序癿过程中有效 (run-time); 
    40 • 执行者将具有该程序拥有者 (owner) 癿权限。 
    41 
    42 -rwsr-xr-x 1 root root  57972 2月  24 08:33 passwd
    43 s特殊权限可让群组暂时获得所有者所拥有的所有权限 所以可以写
    44 
    45 file NAU3  //查看档案格式
    46 t@kali:~/Desktop# file NAU3
    47 NAU3: HTML document, ASCII text

    常用的其他命令

     1 which  -a  命令
     2 //从PATH目录寻找所有可以找到的指令
     3 
     4 whereis
     5 //从档案数据库中查找指定指令 很快
     6 -b 只找binary格式文件
     7 -m 只找出跟指令有关的man说明文件
     8 
     9 locate -i iPconfig
    10 //搜寻已建立的数据库/var/lib/mlocate/(每天默认更新1次)里面的数据所能搜索到的
    11 updatedb //可先更新数据库再locate查找命令   
    12 Locate后接的命令可不分大小写 并且所有包含命令的路径完整名称都会显示出来
    13 
    14 find .  -size  +50k  -a  -size  -60k  //查找当前目录下大于50k而且小于60k的文件
    15 find .  -size  +50k  -a ! -size -60k //查找当前目录下大于50k且不小于60k的文件
    16 find .  -size  -50k  -o  -size  +60k
    17 //查找当前目录下小于50k或则大于60k的文件
    18 • /dev/sd[a-p][1-15]:为SCSI, SATA, USB, Flash随身碟等接口癿磁盘文件名
    19 
    20 • /dev/hd[a-d][1-63]:为 IDE 接口癿磁盘文件名
    21 
    22 扇区为最小物理存储单位 512字节
    23 第一个扇区很重要:包括
    24 1.MBR(master boot record),主要开机区占446字节
    25 2.分割表(partition table),占64字节。
    26 
    27 ctrl+L //清屏
    28 /dev/    //硬件设备文件
    29 ls -l //longlist详细信息显示
    30 ls -l -h   //人性化显示参数 KB
    31 ls  -a   //显示隐藏文件(系统文件)
    32 ls  -l   /etc   //显示指定文件目录下的属性
    33 ls  -ld  /etc/  //显示指定文件本身属性
    34 ls  -l  指定文件目录
    35 ls  -i  //显示文件id号(每个文件都有一个id号,系统也是根据其选择)
    36 -rw-r--r--   //文件格式用十位显示,能识别7种
    37 常见三种文件类型(第一位显示)
    38 -    普通文件
    39 d    目录文件
    40 l     软链接文件
    41 
    42 剩下10位
    43 rw-            r--            r--
    44 u所有者     g所属组       o其他人
    45 r读          w写           x执行
    46 
    47 mkdir -p     japan/canglaoshi
    48 //递归建立目录  
    49 
    50 cd ~    //进入家目录
    51 cd      //进入家目录
    52 cd -        //进入上次目录
    53 cd  ..    //进入上层目录

     cut命令

    cut 命令(针对行信息的选取命令)
    
    -b 提取一行里的第几个字节byte  (一个英文和数字占一个字节,一个汉字占两个字节)
    
    who查看当前已登陆用户信息
    [rocrocket@rocrocket programming]$ who
    rocrocket :0           2009-01-08 11:07
    rocrocket pts/0        2009-01-08 11:23 (:0.0)
    rocrocket pts/1        2009-01-08 14:15 (:0.0)
    
    如果我们想提取每一行的第3个字节,就这样:
    [rocrocket@rocrocket programming]$ who|cut -b 3
    c
    c
    c
    
    切勿汉字依旧设置 -b 3,汉字占两个字节如此设置会出现乱码
    
    
    -c提取一行行里的第几个字符 (不是字符串)
    
    下面例子你似曾相识,提取第3,第4,第5和第8个字符:
    [rocrocket@rocrocket programming]$ who|cut -c 3-5,8
    croe
    croe
    croe
    
    
    -d设置间隔符,-f设置要提取的域 (下面间隔符设置为:)
    [rocrocket@rocrocket programming]$ cat /etc/passwd|head -n 5
    root:x:0:0:root:/root:/bin/bash
    bin:x:1:1:bin:/bin:/sbin/nologin
    daemon:x:2:2:daemon:/sbin:/sbin/nologin
    adm:x:3:4:adm:/var/adm:/sbin/nologin
    lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
    
    [rocrocket@rocrocket programming]$ cat /etc/passwd|head -n 5|cut -d : -f 1
    root
    bin
    daemon
    adm
    lp
    
    设置间隔符为空格或者制表符,两个单引号之间需要空格
    [rocrocket@rocrocket programming]$ cat tab_space.txt
    this is tab finish.
    this is several space      finish
    [rocrocket@rocrocket programming]$ cat tab_space.txt |cut -d ' ' -f 1
    this
    this

     查看硬件时钟和软件时钟

  • 相关阅读:
    爱信诺面试总结
    项目进展日志6
    项目进展日志5
    项目进展日志4
    项目进展日志3
    项目进展日志2
    项目阶段总结
    项目进展日志
    事物的ACID特性
    5.27作业
  • 原文地址:https://www.cnblogs.com/xiongxueqi/p/8588741.html
Copyright © 2011-2022 走看看