zoukankan      html  css  js  c++  java
  • Linux命令学习总结(一)

    命令 -选项 参数
    如果选项是一个单词时,选项前面要加2个-
    modprobe -r pcspkr   在终端中输入的时候有声音,可以用这个命令屏蔽声音 ,需要root权限

    useradd userdel

    useradd tom 添加tom用户,需root权限
    passwd tom 给tom用户添加密码,新创建的用户密码为空
    useradd tom -p 123456 创建tom用户,并设置密码是123456
    userdel tom 删除tom用户,但不删该用户的文件
    user -r tom 删除tom用户的同时,把该用户的主目录下的文件删除

    id 显示当前登录用户的uid和gid
       uid 系统分给用户的识别码,gid 系统分给用户组的身份唯一标识
    id tom 显示tom用户的uid和gid

    ls

    ls 显示目录下的内容,和Windows下的dir命令相当
      ls -l(L的小写) 以长模式显示
      ls -l /usr 查看usr目录下的内容的信息
      ls -ld /usr 查看usr文件夹本身的信息
      ls -1(数字1)当前目录下的内容一行一行显示
      ls -a 显示包含隐藏文件,以.开头的都是隐藏文件
      ls -s 显示文件,以及文件的大小
      ls -1as 选项可以叠加
      ls -sh 显示文件的大小,有单位,能看懂
      ls -i 显示文件的inode值

    date cal bc

    pwd 显示当前所在目录
    clear或者crtl+l 清屏,和Windows下的cls命令相当
    date 显示日期
      date + %Y 显示年
      date + %m 显示月
      date + %M 显示分
      date -u 101109452017 设置时间为2017年10月11日9点45分
    cal 显示日历
      cal 显示这个月分日历
      cal 2016 显示2016年所有的日历
      cal 05 2016 显示2016年5月的日历
    bc 计算器
     bc 回车后可以计算
     1/3 开始等于0,因为默认保留小数点0位
     scale=2 设置保留小数点后2位
     quit 退出计算器
    history 显示我们之前敲过的命令,默认最多显示1000个
    !22 执行history命令中查询出的序号为22的命令

    ctrl

    ctrl+a 跳到命令行的开始位置
    ctrl+e 跳到命令行的结束位置
    ctrl+左箭头 一个单词一个单词的往左跳
    ctrl+右箭头 一个单词一个单词的往右跳
    ctrl+u 把当前光标到本行开头的字符全部删掉
    ctrl+k 把当前光标到本行结束的字符全部删掉
    ctrl+c 结束当前命令的执行
    ctrl+d 退出终端,相当于exit命令
    ctrl+shift+t 打开多个终端,可以用ctrl+d关掉

    touch man

    按住esc,松手时按. 引用上个命令时的参数
    touch xx 创建一个xx文本文件
    ^xx^yy 重新执行上个命令(touch命令),并且创建的文件名改为yy
    whatis ls 告诉我ls这个命令的作用,我们可以用来查看不知道的命令
    man ls 显示ls这个命令的章节介绍,man这个命令可以用来查看不知道的命令
       输入/boot 高亮显示文章中的boot字
       n 从上往下查看boot
       N 从下往上查看boot
       q 退出
    man -k clock 查看有clock关键字的命令,-k表示关键字
    man host.allow 查看host.allow文件的作用,以及如何配置

    gedit rm shutdown poweroff reboot

    gedit 打开gedit文本编辑器
    gedit oo 使用gedit编辑器打开oo文件继续编辑
    rm -f oo 删除oo文件
    nano 打开nano编辑器
     ctrl+o写入文件,没有文件名的话需要输入文件名
     ctrl+x 退出
    sync 把缓存里的数据写入到硬盘中
    shutdown 关机,需要root权限
     shutdown -h 10 10分钟后关机
     shutdown -k 10 10分钟后提示关机,并不会真正关机
     shutdown -h 10:50 10:50时候关机
    poweroff 关机
     poweroff -f 立马关机,速度很快
    reboot 重启
     reboot -f 立马重启,速度很快

    init

    七个运行级别在/etc/rc.d目录下
    runlevel 查看当前在哪个运行级别,后面数字是当前在的,前面数字是以前在的
    init 3 进入第三个级别,需要root权限
    init 3 进入命令界面后输入startx命令,会启动图形化界面这个服务,但是当前还是在第3级别
    init 5 进入图形化界面,因为第5个运行级别默认图形化界面启动
    init 6 重启
    init 0 关机

    chmod chown chgrp

    文件系统
    /etc/passwd 用户的账户信息都放在这个文件夹下
    /etc/shadow 用户的密码信息都放在这个文件夹下
    /etc/group 用户的组信息都放在这个文件夹下
    系统根据uid来标记用户的,不是根据用户名
    ln -s abc.log hh 给sbc.log文件做一个快捷方式,名字为hh
    ls -lh 以查模式显示目录,里面文件的大小有单位
      第一列有10个字符
       第一个字符:-:普通文件(二进制文件或文本文件);d:文件夹;b:设备文件(可以用来存储东西的文件)
                   c:设备文件(字符型文件,不能用来存储东西); l:快捷方式
       下面九个字符:代表了文件的权限,把这9个字符分成三组,第一组针对文件所有者(用户)
                     第二组针对用户组里的人,第三组针对其他用户,每组有3个字符
                     这三个字符分别是r:读权限,w-写权限,x:执行权限,如果哪一个组少了什么字符,
                     就是没有什么权限        
    chmod 更改用户(u),用户组(g),其他人(o)对某一个文件的权限
    chmod u+x,g+w,o-r abc.log 更改为:用户对abc.log文件的权限:加上可执行权限
                                      用户组对abc.log文件的权限:加上写权限
                                      其他人对abc.log文件的权限:减去读权限
    chmod ug-rw abc.log 更改用户和用户组对abc.log文件的权限:减去读和写权限
      相同的可以写在一起
    x权限如果是在一个文件夹上,有x权限的人可以进入这个目录,即可以cd过来
      没有的话不能cd过来
    chmod ug=x abc.log 不管用户和用户组以前对abc.log文件有什么权限,这个命令执行过后只有:可执行权限
    chmod a=rw abc.log a的意思就ugo的简写
    chmod +r abc.log 在+r权限前没有指明是用户或用户组或其他人,默认对用户添加读权限(但本人测试是对三个都加了)
    chmod +w abc.log 在+w权限前没有指明是用户或用户组或其他人,默认对用户和用户组添加写权限
    chmod +x abc.log 在+x权限前没有指明是用户或用户组或其他人,默认对三个都添加执行权限
    我们把r权限当成4,w权限当成2,x权限当成1
    如果说用户对某一个文件的权限是数字5,那么就是有r权限和x权限
    chmod 743 abc.log 更改用户、用户组、其他人abc.log的权限,分别是rwx、r、rx权限
    chmod 000 /usr 更改usr文件夹的权限为000,不会改变文件夹里面内容的权限
    chmod -R 555 /usr 更改usr文件夹以及文件夹里面内容的权限为555,-R表示递归
    useradd tom 添加一个tom用户
    chown tom /abc.log 把abc.log的所有者(用户)改为tom用户
    chown tom:tom abc.log 把abc.log文件的所有者和用户组都改为tom
       冒号(:)可以改成点(.)
    chgrp root abc.log 把abc.log文件的所属组改为root
    chown -R tom /usr 把usr文件夹以及里面的内容的所有者改为tom
    chgrp -R tom /usr 把usr文件夹以及里面的内容的所属组改为tom

    file

    file abc.log 查看文件的类型
    Linux根目录下有很多文件夹
      bin:存放二进制文件
      boot:系统的启动文件(内核的配置文件等)
      dev:存放设备文件,移动硬盘、u盘等
      etc:配置文件
      home:用户的家目录
      lib:链接库文件
      media:系统的自动挂载点
      mnt:手动挂载点
      opt:当我们使用源码包安装时,一般都会安装在这个目录下的某一个文件夹,如果不指名安装的话,默认安装在usr目录下
      proc:指定内核参数
      root:root的家目录,其他用户的家目录都放在home目录下
      sbin:当我们敲命令时,都是存放在这个目录下
      tmp:临时文件
      usr:默认安装路径
      var:日志文件、缓存文件、数据库文件,占用空间比较大

    tree uname

    tree /boot 查看boot目录下的树形结构
    /usr/aa/bb 绝对路径,从根目录下开始写
    .表示当前目录
    ..表示上层路径
    cd ../../../ 当前目录的上层的上层的上层目录
    uname 查看内核,Linux
    uname -i 查看架构(64位还是32位)
    uname -r 内核版本
    uname -a 查看所有信息
    lsb_release -a 查看所有信息
    cat /etc/redhat-release

    cd mkdir rmdir rm sh

    cd /usr 切换到usr目录
    cd 切换到当前用户的家目录,等同于cd ~
    cd ~tom 切换到tom用户的家目录,一般用户的家目录在home下,如/home/tom,root用户的家目录是/root
    cd ~/tom 切换到当前用户的家目录下的tom文件夹,由此可见~后面有/和无/的区别
    whoami 看当前用户是谁
    cd - 切换到上次所在的目录
    mkdir xx 创建xx目录
    mkdir yy zz 同时创建多个目录
    rmdir yy zz 同时删除多个目录,rmdir不能删除非空目录
    mkdir -p xx/yy 创建xx目录,xx目录下再创建一个yy目录,-p的意思是xx目录不存在的话就创建
    mkdir -p rhca/{xx,yy,zz} 创建rhca目录,在rhca目录下创建三个文件夹
    rmdir -p rhca/xx 删除xx目录的同时把rhca目录也删掉,需要删掉xx目录后rhca是空的
    rm -rf rhca 把rhca目录删掉,-r表示递归,-f表示强制,不管rhca目录下有没有子目录
    rm -rf * 把当前目录下的所有东西强制删除
    echo $PATH 查看系统命令路径
    gedit xx.sh 创建一个脚本
    ./xx.sh 执行当前目录下的xx.sh脚本
    sh xx.sh 执行xx.sh脚本
      如果我们直接写xx.sh的话,系统默认到PATH路径下找,因为我们没把这个路径加到系统path变量里,
      报找不到命令的错误,如果我们想直接写xx.sh时能找到,就需要在系统path变量里加上这路径,如/home/sun
    PATH="/home/sun" 设置系统的path变量路径为/home/sun,如果我们要更改,应该先获得以前的所有命令,
      然后再加上这个路径,这里仅为方便写了
    ls -ld --time=atime /boot 以长模式显示boot文件夹自身的信息,其中的时候等于最后访问时间
    ls -ld --time=ctime /boot 以长模式显示boot文件夹自身的信息,其中的时候等于创建时间
    ls -R / 列出根目录下的文件,-R表示递归,如果文件夹下面还有文件夹,都显示出来

    cp

    cp /etc/service /home/sun 把etc目录下的service文件拷贝到home/sun文件夹下,名字还是service
    cp /etc/service /home/sun/xx 把etc目录下的service文件拷贝到me/sun文件夹下,重命名为xx
    cp -rf /etc /home/sun 把etc目录递归、强制拷贝到sun目录,如果不加-rf,cp无法直接拷贝一个目录
    cp -p /etc/service /home/sun 把etc目录下的service文件拷贝到home/sun文件夹下,名字还是service
      不加-p的话不会复制文件的属性信息,如创建时间
    cp -a /etc /mnt 把etc目录都复制到mnt里,-a表示all,包含-r/-f/-p
    cp -u /etc/service /mnt/service 把etc目录下的service文件复制到mnt目录下的service文件中
      如果etc目录下的service比mnt目录下的service新的话就会复制过去,反之不会复制过去
      如果不加-u的话,会有提示的
    cp xx yy 把xx文件拷贝为yy文件,如果xx是快捷方式的话,实际上快捷方式的链接没拷贝过去
    cp -d xx yy 加上-d,如果xx是快捷方式,会拷贝过去
    rm service 删除service文件
    alias 查看别名,比如当我们把rm -i命令取别名为rm,当我们敲rm时,实际执行rm -i
    ls /boot/grub/grub.conf 查看/boot/grub/目录下的grub.conf,结果包含路径和文件名
    basename /boot/grub/grub.conf 查看文件名,结果只有文件名
    dirname /boot/grub/grub.conf 查看文件路径,结果只有路径

    cat tac head nl tail more less od strings

    我们可以使用cat、tac、head、nl、tail、more、less、od查看文档的内容
    cat xx 查看xx文件的内容,从前往后显示全部内容,如果内容非常多的时候,
           我们只能看到最后的东西,由此cat适合查看小文件
    cat -n xx 查看文件时把每一行都加上一个编号
    tac xx 查看文件的内容,从后往前显示
    nl xx 查看文件内容,会在每一行前加上行号,和cat -n xx效果一样
    nl -b a hosts,空行前也会加上行号
    more xx 从前往后显示文件的内容,分屏显示,按enter再显示一行,按空格再显示一屏
            按q退出
    less xx 从前往后显示文件的内容,分屏显示,按enter再显示一行,按空格再显示一屏
            less支持往前看,往后看,pageup往前翻,pagedown往后翻
            home翻到第一页,end翻到最后一页
            输入/然后输入要查找的内容,支持查找,按n往下翻,按N往前翻
            按q退出
    head xx 查看xx文件的前几行,默认是10行
    head -5 xx 查看xx文件的前5行,等同于-n 5
    tail xx 查看xx文件的尾几行,默认是10行
    tail -5 xx 查看文件的尾5行,等同于-n 5
    tail -n +5 xx 从第5行开始查看文件内容
    tail -f xx 查看文件的尾10行,但是不会退出来,我们可以监测日志文件
    tailf xx 等同于tail -f xx,按crtl+c退出
    service network restart 重启网络
    od -t c /bin/ls -t指明显示类型 c指明用什么显示,c表示Ascii码,用于查看二进制文件
    strings /bin/ls 查看文本或二进制文件的内容,强大的功能

    touch ll

    touch xx 如果xx文件不存在的话,创建一个新文件,名字叫xx
             如果xx文件存在的话,把这个文件的创建时间和修改时间改为当前时间
    ll 等同于ls -l 以长模式显示目录内容
    touch -t 20121223152536 xx 把xx的文件时间改为20121223152536
          不加时间,默认当前时间

    umask chattr

    umask 权限过滤壶,可以查看过滤的权限,默认0002,取后面三位
    umask 333 设置权限过滤为333,再进行查看的话就是0333
    umask -S 查看保留哪些字符,和umask相反
    lsattr xx 查看xx文件的隐藏权限
    chattr +a xx 修改xx文件的隐藏权限,+a表示只能添加,不能删除
    chattr +i xx 表示这个文件不能更改,不能删除
    chattr -a xx 减去隐藏a权限
    chattr -i xx 减去隐藏i权限

    whereis locate echo chmod

    chmod u+s xx 在一个命令的所有者权限上,出现了s时,其他用户对这个文件操作时,将具有所有者的权限
    which passwd 查看passwd这个命令所在的路径,结果为/usr/bin/passwd,也可以查看其他命令的路径
    whereis passwd 查看passwd命令的路径,以及包含passwd命令的文件
    whereis -b passwd 只看包含二进制文件命令的路径
    whereis -m passwd 除二进制文件命令之外的其他命令
    locate mmm 列出所有文件名有mmm字段的文件路径
       locate找文件时并不是通过硬盘找的,是通过/var/lib/mlocate/mlocate.db数据库找的
       而这个数据库是每天0点更新一次的
       如果我们想通过locate命令查看刚创建的文件,只需更新一下数据库即可
    updatedb 更新数据库
    locate -i mmm 查找包含mmm文件名的文件路径,不区分大小写,也就是说MMM也能找到
    hostname 查看主机名
    echo xxxxx 在屏幕中打印出xxxxx
    echo xxx`hostname`yyy 当一个命令嵌套在其他命令中,是不会执行的,除非加上反引号·或$()
    echo xxx$(hostname)yyy 执行结果和上个一样
    chmod 4644 xx 设置xx文件的权限,644表示正常的权限,开始是4表示给u的位置加个S权限
    chmod 2644 xx 设置xx文件的权限,644表示正常的权限,开始是2表示给g的位置加个S权限
    chmod 1644 xx 设置xx文件的权限,644表示正常的权限,开始是1表示给o的位置加个T权限

    find

    find 目录 -属性 值
        如果不指名路径的话,默认在当前路径查找
    find / -name xxx 根据文件名,在根目录下查找文件名为xxx为文件路径
    find / -user xxx 根据用户名,在根目录下查找所有者为xxx的文件路径
    find / -user xxx -group yyy 根据用户名和所属组,在根目录下查找所有者为xxx,且所属组为yyy的文件路径
    find / -user xxx -or -group yyy 根据用户名和所属组,在根目录下查找所有者为xxx,或者所属组为yyy的文件路径
    find / -uid 500 查找uid是500的用户所有的文件,当创建了用户,系统会给用户分配一个uid,作为标识

    dd if=/dev/zero of=file1 bs=1M count=1 从dev下拿1个zero,每个zero大小是1M,组成一个file1
          zero本来没有大小,而且无穷多,我们用bs自定义大小,count是数目

    find -size 4M 在当前路径下查找文件大小是4M的文件
    find -size +2M 在当前路径下查找文件大小大于2M的文件
    find -size -2M 在当前路径下查找文件大小小于2M的文件
    find -size +2M -size -5M 在当前路径下查找文件大小大于2M、小于5M的文件
    find -ctime 1 查找创建时间正好过1天的
    find -ctime +1 找到1天之前创建的文件
    find -cmin +1 查找创建时间大于1分钟的文件
    find -newer file1 在当前目录查找比file1新的文件,就是比file1创建时间晚的
    find /mnt -perm 222 在mnt目录下查找文件权限是222的文件
    find /mnt -perm +222 在mnt目录下查找文件权限中的u、g、o只要有一个有w权限的的文件
         它们之间是或的关系
    find /mnt -perm -222 在mnt目录下查找文件权限中的u、g、o都有w权限的的文件
         它们都要有w权限,当然除了w权限也可以有其他权限
         它们是并的关系
    find / -perm -2 other必须要有w权限
    find / -perm -22 group必须要有w权限,other必须要有w权限

    filefrag dumpe2fs df du

    ls -i xxx 查看xxx文件在inode里的序号,inode存储了block的信息,block存着文件数据
      ls -i /etc 查看etc目录下文件的inode序号
      ls -id /etc 查看etc文件夹的inode序号
    filefrag -v xxx 查看xxx文件分布在哪些block里
    dumpe2fs /dev/sda1 | more 查看日志

    VFS
    linux支持ext2、ext3、vfat文件系统
    df 显示已挂载的文件系统
    df -h 以更适合查看的单位来显示已挂载的文件系统
    df -hT 以更适合查看的单位来显示已挂载的文件系统,包含显示文件系统的类型

    du /etc 显示文件夹的大小,也显示文件夹里面东西的大小
    du -s /etc 显示etc文件夹的大小,不显示里面东西的大小,s表示single
    du -sh /etc 带单位显示文件夹的大小
    du -h xx 带单位显示xx文件的大小

    ln fdisk partprobe mkfs mount umount swapon swapoff

    软连接:快捷方式
    ln -s aa aa1 创建aa文件的快捷方式(软连接)aa1,指向aa
    ln aa aa1 创建aa文件的硬链接aa1,硬链接不能分区,创建硬链接时不加参数
      ll xx 显示xx文件的长模式数据,权限后的数字是xx文件的硬链接数
    diff aa aa1 显示aa和aa1文件不同的内容
    fdisk -l 显示系统所有的硬盘,和对应的分区,需要root权限
    fdisk -l /dev/sda 查看sda硬盘和分区
    fdisk /dev/sda 给sda硬盘进行分区,fdisk后面跟硬盘名,我们是对硬盘进行分区
      我们给一个硬盘分配分区时,一个硬盘最多划分为4个主分区,所以主分区+扩展分区<=4
      我们划分的分区为主分区或扩展分区,然后我们可以在扩展分区上划分逻辑分区
    partprobe /dev/sda 更新sda硬盘的分区表
    partprobe 后面不加硬盘,更新所有硬盘的分区表
    刚划分好的逻辑分区不能直接使用,需要先格式化
    mkfs -t ext3 /dev/sda5 以ext3文件系统格式化sda5分区,默认一个block size是1K
    mkfs -t ext3 -b 4096 /dev/sda5 以ext3文件系统格式化sda5分区,设置1个block size是4K
    mkfs.ext3 /dev/sda5 以ext3文件系统格式化sda5分区,默认一个block size是1K
      和mkfs -t ext3 /dev/sda5效果一样
    格式化好的分区需要挂载,挂载后才能使用
    mount /dev/sda5 /mnt 把sda5分区挂载到mnt目录下,当我们访问mnt时,实际上访问的是sda5分区
    mount -o 选项 -t 文件系统
    mount -o remount,ro /mnt 以只读的形式重新挂载mnt目录,ro表示只读
    mount -o remount,rw /mnt 以可读可写的形式重新挂载mnt目录,rw表示可读可写
    mount -o remount,noexec /mnt 以不可执行权限重新挂载mnt目录,noexec表示没有可执行权限
    mount -o remount,exec /mnt 以可执行权限重新挂载mnt目录,noexec表示有可执行权限
    使用df -hT 查看已挂载的分区
    实际上我们用mount挂载的只是在这一次系统启动时有效,重启了就没有了
    需要我们在/etc/fstab文件里写入才能开机启动
    umount /mnt 卸载mnt目录下挂载的分区
      和umount /dev/sda5效果一样
      umount 外部设备
      umount 挂载点
    fuser -mv /mnt 查看哪个进程正在使用mnt目录
    fsck /dev/sda5 检查sda5磁盘有没有问题
    fsck -f /dev/sda5 强制检查sda5磁盘有没有问题
    fsck -C -f /dev/sda2 能显示检查的过程
    badblocks /dev/sda5 检查sda5磁盘的坏道
    badblocks -sv /dev/sda5 检测sda5磁盘的坏道,有进度,并把结果显示出来
    tune2fs -l /dev/sda5 查看sda5分区的信息
    e2label /dev/sda5 xx 修改sda5分区的卷标为xx
    e2label /dev/sda5 查看sda5分区的卷标
    mount -o loop xx.iso /mnt 把xx.iso镜像文件挂载到mnt目录下
      挂载镜像文件要加上loop
    cat /proc/swaps 查看swaps文件来看系统的交换分区和虚拟内存
    mkswap /dev/sda6 把sda6变成一个交换分区
    swapon /dev/sda6 激活sda6这个交换分区
      然后cat /proc/swaps才能查到sda6这个交换分区
    swapoff /dev/sda6 关闭sda6这个交换分区
    如果想开机启动的话,就需要写进/etc/fstab文件中
      也可以把一个文件里的空间变成交换分区

    gzip bzip2 tar

    gzip xx 压缩xx文件为xx.gz
      gzip -c xx > xx.gz 压缩后原文件保存
    zcat xx.gz 直接查看压缩文件的内容
    gzip -d xx.gz 解压文件
    bzip2 xx 压缩文件为xx.bz2
      bzip2 -c xx > xx.gz 压缩后原文件保存
    bzcat xx.gz 直接查看压缩文件的内容
    bzip2 -d xx.gz 解压文件
    zip xx.zip xx 把xx压缩为xx.zip
    unzip xx.zip 解压
    通过对一个文件压缩后发现,gzip压缩效果最好,bzip2第二,但是zip压缩后反而压缩文件比原文件大
    tar -cvf xx.tar xx 把xx文件打包成xx.tar
      c是创建一个文件;v是显示创建过程;f是指明创建后的文件名,以tar结尾
    tar -cvf xx.tar xx --remove-files 打包后不保留原文件
    tar -tvf xx.tar 不解档的情况下查看打包的内容
    tar -xvf xx.tar 解档tar包
    tar -xvf xx.zip -C /mnt 把打包文件解档到哪个目录下
      -C后加上目录
    tar -cvf xx.tar * --remove-files 把当前目录下的所有文件都打包到xx.tar
    tar -xvf xx.tar hosts 把xx.tar包里的hosts文件解压出来,其他的不解压
    tar -zcvf xx.tar.gz * 打包过程中进行压缩
      -z表示调用gzip压缩工具压缩,所以压缩后的名以.gz结尾
      最后加上--remove-files会删除原文件
    tar -zxvf xx.tar.gz 解压
    tar -jcvf xx.tar.bz2 * 打包过程中进行压缩
      -z表示调用bzip2压缩工具压缩,所以压缩后的名以.bz2结尾
      最后加上--remove-files会删除原文件
    tar -jxvf xx.tar.gz 解压

    dump restore mkisofs dd cpio

    dump -0
     0表示完全备份
    dump -0u -f /etc/xx.dump /dev/sda3 把sda3硬盘里的数据备份到xx.dump中
     备份级别有0-9,0表示完全备份,每一次备份级别只备份上次备份级别比它小的
    restore -r -f /etc/xx.dump 恢复备份的数据,-r表示恢复全部文件
    restore -i -f /etc/xx.dump 恢复备份文件的部分数据,回车后输入?回车,能看到命令提示

    mkisofs -o xx.iso file1 file2 file3 把file1 file2 file3三个文件刻录成iso镜像
    mount -o loop xx.iso /mnt 把xx.iso镜像挂载到mnt目录下
    cp /dev/cdrom xx.iso 直接把光盘里的东西复制成iso镜像
    dd if=/dev/sda3 of=test 把sda3整个的硬盘数据备份到test
    dd if=test of=/dev/sda3 从test恢复到sda3中
    find -name 'file*' | cpio -o > xx.cpio 把|前面用命令找到的结果通过管道传给cpio,cpio将他们打包成xx.cpio
       -o表示打包
    cpio -iu < xx.cpio -i表示解压

    vim

    由命令模式进入插入模式,按i、I、a、A、o、O
      i 光标还在当前光标
      I 光标移到本行开头
      a 光标在光标后一个字符
      A 光标跳到本行结束
      o 当前行下一行产生一个空白行
      O 当前行上一行产生一个空白行
    由插入模式进入命令模式,按ESC键
    在命令模式 w表示保存;q表示退出;!表示强制执行
      wq保存并退出
      q!不保存强制退出
    按ESC后,按yy表示复制光标所在一行,按p表示复制
    在命令模式,输入set nu 在每行前面增加了一个行号,只是在内存中增加,文件不会保存
      set nonu 取消每行前的行号
    s/rhce/RHCA/ 把光标所在的当前行中的第一个rhce换成RHCA
    s/rhce/RHCA/g 把光标所在的当前行中的所有rhce换成RHCA
    在命令模式,输入u表示还原,按ctrl+r表示前进
    6,18s/rhce/RHCA/g 把从第6行到第18行的所有rhce换成RHCA
    .,18s/rhce/RHCA/g 把从当前行到第18行的所有rhce换成RHCA
    .,$-1s/rhce/RHCA/g 把从当前行到倒数第二行的所有rhce换成RHCA
     .表示当前行
      $表示最后一行,$-1表示倒数第二行
    %s/rhce/RHCA/g 把全文所有rhce换成RHCA
    %s/rhce//g 把全文所有rhce删除
    10,18s/^/#/g 把从第10行到第18行开头加上#
    10,18s/^#//g 把从第10行到第18行开头为#的字符去掉
    在末行模式输入3,快速的进入到第三行
    在命令模式输入/同样可以进入末行模式,用来查找
    在命令模式
      先按5,再按shift+g或G跳到第5行
      按shift+g或G跳到最后一行
      按两下g跳到第一行
      按yy复制当前行
      按p粘贴
      按4yy复制当前行往下4行
      按dd剪切当前行,相当于删除
      按4dd从当前行剪切4行
      先按r再按5把当前字符替换为5
      按x把当前字符删掉
      按ctrl+v进入可视块,用上下左右箭头移动来选中要复制的区域,按y复制,按p粘贴
    vim xx yy 同时打开xx和yy两个文件
      在末行模式下输入n进入下一个文件,N进入上一个文件,first跳到第一个文件,last跳到最后一个文  件。
    在末行模式输入sp,可以分屏操作同一个文件
      按ctrl+w后按上下箭头可以跳屏
      或者按住ctrl,连续按两下w也可以跳屏
    如果想每次打开文件都有行号显示,需要进入家目录,编辑.vimrc文件,输入set nu保存
    vim /etc/sysconfig/i18n 这个文件规定了系统的编码
    unix1dos -n xx yy 把linux下的文件xx转成Windows能正确显示的文件yy
     -n表示日期变成现在的
     -k表示日期还是原来的
    dos2unix命令表示把Windows下的文件转成linux能正确显示的文件

  • 相关阅读:
    鼠标事件(onmouseover、onmouseout)延时切换插件
    光线跟踪MaxScript版
    MaxSDK添加菜单项
    Linux实战教学笔记03:操作系统发展历程及系统版本选择
    Linux实战教学笔记06:Linux系统基础优化
    Linux实战教学笔记04:Linux命令基础
    Linux实战教学笔记02:计算机系统硬件核心知识
    Linux实战教学笔记05:远程SSH连接服务与基本排错(新手扫盲篇)
    Linux实战教学笔记01:计算机硬件组成与基本原理
    如何启动linux的telnet服务
  • 原文地址:https://www.cnblogs.com/aqsunkai/p/6690613.html
Copyright © 2011-2022 走看看