zoukankan      html  css  js  c++  java
  • linux系统命令基础知识

    安装好Linux系统之后查看/目录,/下目录的作用如下:

    /下目录作用
    /bin /usr/bin /usr/local/bin 普通用户可执行目录
    /sbin /usr/sbin /usr/local/sbin 系统可执行目录
    /etc/ 配置文件目录
    /usr/ 应用程序目录
    /var/ 服务器数据目录
    /lib /usr/lib /usr/local/lib 库文件目录(系统模块)
    /dev/ 块设备目录和字符设备
    /boot 引导程序目录(内核,启动文件,引导程序)
    /root 管理员家目录
    /home 普通用户家目录
    /proc 内存信息目录(内存信息和进程信息) 伪文件系统
    /sys 内存信息目录(内存信息和进程信息) 伪文件系统
    /tmp 临时文件目录
    /opt 第三方软件目录
    /mnt 临时挂在点
    /srv 服务器数据目录
    /media 媒体目录
    /misc autofs
    /net autofs
    /tftpboot tftp服务使用
    /selinux selinux使用
    /lost+found 用于文件系统恢复

    linux常用命令

    ctrl+l 清屏
    ctrl+c 中断

    [基本命令]

    ls -l install.log
    -:rw-r--r-- :1 :root :root :39410 : 2013-05-21: install.log
    文件类型:权限:硬链接数:拥有者:所属组:文件大小:最后一次修改时间:文件名
    - 普通文件
    d 目录文件
    c 字符文件
    b 块设备文件
    l 软链接文件(符号)
    p 管道文件
    s 套接字文件

    ls -l 长格式 -a 所有文件 -A 所有文件除了.和..
    . 当前目录
    .. 上层目录
    -d 显示目录信息 -h 最大单位显示 -t 安时间排序
    -r 反向 -R 递归

    1.ls --help
    2.info ls
    3.type ls
    alias la='ls -la'
    unalias la
    4.man ls
    一 用户命令
    二 系统调用
    三 库调用
    四 特殊文件
    五 配置文件
    六 游戏
    七 杂项(man)
    八 系统命令
    九 内核参考

    makewhatis 维护man后台
    man -f passwd 查询命令在那些章节有相应说明
    man -k passwd 模糊查询

    cd cd / .. ../.. . ~ -返回上次工作目录
    pwd 查询位置

    查看文件内容

    1.head

    head -n 30 install.log

    2.tail

    tail -n 20 install.log

    tail -f /var/log/messages

    3.more

    more install.log

    4.less

    less install.log

    5.cat

    cat -n install.log

    cat -b install.log

    cat -n install.log | less

    | 管道符号

    前一个命令输出作为后一个命令输入

    创建文件

    touch

    touch aa.txt

    touch cc.txt tt.txt

    touch abc{1..10}.txt

    touch {a,b,c}{1..3}.txt

    创建目录

    mkdir

    mkdir tt

    mkdir test1 test2

    mkdir abc{1..10}

    mkdir -p dir/aa

    mkdir -pv dir/aa

    拷贝copy 剪切move

    cp /root/install.log /tmp/

    cp /root/install.log /tmp/install 拷贝的同时重命名

    cp -r /tmp/dir/ /

    mv /root/xx.txt /tmp/

    mv /root/xx.txt /tmp/haha.txt

    mv xx.txt xx.txt.bak

    mv /tmp/tt /

    删除

    rmdir 只能删除空目录

    rm

    rm tt.txt

    rm -f install.log

    rm -rf abc9

    rm -rf *.txt

    rm -rf abc*

    rm -rf /dir/

    vim 文本编辑器 vi
    命令模式进入输入模式
    a 当前字符后输入
    A 当前行行尾输入
    i 当前字符前输入
    I 当前行行首输入
    o 当前行下一行输入
    O 当前行上一行输入
    s 删除当前字符后输入
    S 删除当前行后输入

    home键位行首 end行尾

    命令模式
    u 撤销一步操作
    ctrl + r 重做

    yy 复制一行
    50yy 复制50行
    dd 剪切一行 dd删除
    50dd 剪切50行

    p 粘贴

    w 下一个单词的首字符
    dw 删除/剪切一个单词 yw

    ^ 行首 d^ y^
    $ 行尾 d$ y$

    G 尾行
    gg 首行
    750G 定位到750
    dgg 删除当前行到首行
    dG 删除当前行到尾行

    末行模式
    :w :q :wq
    :w! :q! :wq!
    :e /root/aa.txt 打开/读入
    :2,3w /root/newfile.txt 另存
    :r /root/file.txt 追加读入
    :e! 重新读入当前文件

    :set nu 显示行号
    :set nonu 去掉行号
    :set autoindent 自动缩近
    :set noautoindent 去掉自动缩近

    查找
    / 从上往下
    ? 从下往上
    N n

    替换
    :%s/ab/OO/gc %所有行 g全局 s替换 c交互式替换
    2,5s/ab/OO/gc

    :%s/^ // 替换所有开始指标符
    :%s/ // 替换每行第一个指标符
    :%s/ //g 去掉所有空格
    :%s/^#//g 删掉行首#

    :g/^$/d 删除空行
    :g/^s*$/d 删除所有类型空行

    :X 加密 解密

    vim配置文件 /etc/vimrc

    多文件操作
    vim aa.txt cc.txt tt.txt
    :args next prev first last ctrl+6

    vimdiff aa.txt cc.txt tt.txt
    ctrl+w+w

    vim -O aa.txt tt.txt cc.txt
    vim -o aa.txt tt.txt cc.txt

    vim教程
    /usr/share/vim/vim70/tutor/tutor.zh.euc

    gedit /usr/share/vim/vim70/tutor/tutor.zh.euc
    文件--->另存---->字符集----->保存----->替换
    vimtutor

    iconv -f gb18030 -t utf-8 tutor.zh.euc -o test.txt
    字符编码转换

    shift+k

    可视化模式v
    y 复制 d 删除 p 粘贴
    可视化块模式 ctrl+v
    shift+i----->输入字符-->ESC(两次)

    用户管理
    uid 0 root gid 0 root
    uid 1-499 system gid 1-499 system group
    uid 500-60000 user gid 500-60000 group

    添加用户useradd
    useradd abc1

    保存用户信息的文件:/etc/passwd
    robin:x:500:500:ptuser:/home/robin:/bin/bash
    用户名:密码占位符号:uid:gid:描述:家目录:shell

    useradd -u 1000 -g 500 -c hello -d /mnt/abc2 -s /bin/bash abc2

    添加组groupadd
    groupadd uplooking

    保存组信息的文件 /etc/group
    uplooking:x:502:
    组名:组密码占位符号:gid:用户名
    groupadd -g 2000 upup

    设置密码
    1.root通过passwd robin
    2.robin执行passwd修改自己密码

    密码保存文件:/etc/shadow
    robin:$1$Bj0Exbfx$e24mczi0jmsiDR:15847:2:10:3:2::

    第一列:用户名
    第二列:密码(md5)
    第三列:密码最后一次修改时间(天)
    第四列:密码最小时间
    第五列:密码最大时间(密码有效期)(天)
    第六列:密码过期前警告时间
    第七列:密码过期后帐号过期时间
    第八列:帐号有效期
    第九列:保留列

    练习:
    1.添加组kkk gid为1500
    groupadd -g 1500 kkk
    2.添加用户 zorro uid 1500 属于kkk组 描述:hello 家目录/mnt shell:bash

    useradd -u 1500 -g kkk -c hello -d /mnt/zorro -s /bin/bash zorro

    3.通过管理员设置该用户密码为123
    终端登录zorro 设置自己密码为123.com


    修改用户信息
    usermod
    usermod -u -g -c -d -s robin

    usermod -l abc2abc abc2
    usermod -L robin
    usermod -U robin
    usermod -f 密码过期后帐号过期时间
    usermod -e 帐号有效期

    修改组信息
    groupmod -g 2500 uplooking
    groupmod -n upup uplooking

    修改密码及信息
    passwd -n(最小时间) -x 最大时间 -w 警告时间 -i 密码过期后帐号过期时间

    passwd -l robin 锁定密码
    passwd -u robin 解锁密码
    passwd -S robin  查看密码状态

    添加用户tom和jerry 分别设置两个用户密码为123
    锁定tom帐号 锁定jerry密码
    终端登录测试 返回值是否一致?
    查看shedow文件 两个用户有什么区别?
    !锁定帐号
    !! 锁定密码

    删除用户:
    userdel -r abc2
    删除组
    groupdel upup


    附加组
    groupadd yw
    groupadd kf
    useradd -G kf,yw wg 覆盖附加组信息
    useradd -a -G kf,yw wg 追加附加组信息

    groupadd boss
    gpasswd boss

    手动添加帐号
    #####1.groupadd zu
    1).vim /etc/group
    zu:x:2000:

    ######2.useradd -g zu zhb
    1).vim /etc/passwd
    zhb:x:2000:2000::/home/zhb:/bin/bash
    2).mkdir /home/zhb
    3).cp /etc/skel/.bash* /home/zhb/

    #####3.passwd zhb
    1).vim /etc/shadow
    zhb::15848:0:99999:7:::
    2).grub-md5-crypt产生密码 将密码复制到第二列

    终端登录测试 创建文件?


    多用户导入
    1.导入文件(user.txt)内的用户和系统的passwd文件用户信息不能冲突
    2.导入文件(user.txt)内用户不能冲突

    [root@localhost ~]# cat user.txt
    user1:x:3000:3000:ptuser:/home/user1:/bin/bash
    user2:x:3001:3001:ptuser:/home/user2:/bin/bash

    newusers < user.txt

    [root@localhost ~]# cat passwd.txt
    user1:123
    user2:123

    chpasswd < passwd.txt

    用户配置文件
    /etc/default/useradd
    HOME=/home
    SHELL=/bin/bash
    SKEL=/etc/skel

    /etc/login.defs(限制uid数量 密码限制)

    中天一片无情月,是我平生不悔心
  • 相关阅读:
    beta阶段贡献分配实施
    Beta发布
    Beta发布——视频博客
    Scrum立会报告+燃尽图(Beta阶段第二周第七次)
    Beta发布——美工+文案
    Scrum立会报告+燃尽图(Beta阶段第二周第六次)
    Scrum立会报告+燃尽图(Beta阶段第二周第五次)
    Scrum立会报告+燃尽图(Beta阶段第二周第四次)
    Scrum立会报告+燃尽图(Beta阶段第二周第三次)
    20181011-1每周例行报告
  • 原文地址:https://www.cnblogs.com/ArmoredTitan/p/6894108.html
Copyright © 2011-2022 走看看