zoukankan      html  css  js  c++  java
  • linux基础_02

    1.什么是Bash shell(壳)

    BashShell是一个命令解释器,它在操作系统的最外层,负责用户程序与内核进行交互操作的一种接口,将用户输入的命令翻译给操作系统,并将处理后的结果输出至屏幕。
    当我们使用远程连接工具连接linux服务,系统则会给打开一个默认的shell,我们可在这个界面执行命令、比如:获取系统当前时间,创建一个用户等等...

    2.Bash Shell能干什么?
    使用Shell实现对Linux系统的大部分管理,例如:
    1.文件管理
    2.权限管理
    3.用户管理
    4.磁盘管理
    5.网络管理
    6.软件管理
    .等等.

    3. Bash shell执行方式
    输入命令方式 --->效率低--->适合少量的工作
    shell script --->效率高--->适合复杂的工作

    4.了解
    Bash ---> GNU/Bash
    [root@www ~]# bash -version
    GNU bash, version 4.2.46(2)-release (x86_64-redhat-linux-gnu)

    Bash是默认的shell,其实上还有很多其他的shell


    5.shell提示符
    $ = 普通用户, # = root用户(超级管理员)
    [root@xuliangwei ~]# whoami
    root

    [root@beua ~]# echo $PS1
    [u@h W]$
    root: 当前登录系统的用户
    www: 当前系统的主机名称
    ~: 当前所在的位置
    #: 通常情况下,是超级管理员的身份
    $: 只要是普通用户,则为$符号

    [oldboy1@beua ~]$


    命令行bash shell, 为用户提供输入, 执行命令的界面

    #命令 选项 参数
    command [-options] [arguments]

    [root@beua ~]# ls #命令
    [root@beua ~]# ls -a #命令+选项
    [root@beua ~]# ls -a /home/ #命令+选项+参数

    #命令: 整条shell命令的主体
    #选项: 用于调节命令的具体功能
    #以 “-”引导短格式选项(单个字符),例如“-a”
    #以“--”引导长格式选项(多个字符),例如“--all”
    #多个短格式选项可以写在一起,只用一个“-”引导,例如“-al”
    #参数: 命令操作的对象,如文件、目录名等

    PS: 选项和参数在有些命令的时候时,位置可以发生变化.
    PS: 命令必须开头, 选项和参数位置可以发生变化

    [root@beua ~]# ls-a
    bash: ls-a: command not found... 找不到命令(要么命令写错了,要么就真的没有该命令)

    [root@beua ~]# ls /.bashrc
    ls: cannot access /.bashrc: No such file or directory 没有这个文件或目录

    PS:相信电脑,永远不要相信自己


    bash shell特性

    1.tab键补全支持
    命令补全 选项补全 参数补全
    在实际生产中tab补全往往是我们使用的最多的, 因为可以减少执行命令以及路径出错率。


    命令补全: 按一下tab键没有任何反应,因为以user开头的命令有很多,系统并不知道你需要使用哪一个
    [root@beua ~]# user
    useradd userdel userhelper usermod usernetctl users


    路径补全:

    beua
    2.bash shell常用的快捷键
    ctrl +a 跳转光标至本行的首部
    ctrl +e 跳转光标至本行的尾部
    ctrl +u 删除从光标到行首的所有字符
    ctrl +k 删除从光标到行末的所有字符
    ctrl +l 清屏,还可以使用clear命令
    ctrl +c 终止当前的任务
    ctrl +d 退出服务器, 还可以使用logout或exit
    ctrl +w 按空格删除光标之前的内容
    ctrl +z 将当前的任务挂起
    ctrl +r 搜索命令,
    ctrl +s 锁住屏幕,解锁ctrl+c [忽略]
    ctrl + 左右方向键 按照单词快速的跳转光标, Xshell工具提供的
    #号符: 注释(代表不执行)

    3.历史记录history
    history 命令直接查看当前的shell所执行过的命令
    !100 调用history历史命令中编号为100
    !! 执行上一次执行过的指令

    选项
    -w 保存命令历史到历史文件 write #写入到当前用户的家目录下.bash_history
    -c 清空命令历史记录, 不会情况文件 clear
    -d 删除命令历史的第 N 条行 delete
    Ecs + . 获取上一个命令的参数


    4.命令别名alias

    1.如何设定别名
    alias oldboy=ping www.baidu.com

    2.如何取消别名
    unalias oldboy

    3.为什么系统默认存在一些别名:
    防止在执行危险指令时,发生误操作的情况,比如:
    alias rm='rm -i'

    PS: 当前的别名全部都是针对当前的Shell生效,临时生效.
    4.永久生效{扩展}
    将内容写入到 /etc/bashrc 所有的shell都生效


    5.命令帮助--help man

    [root@beua ~]# ls --help
    用法:ls [选项]... [文件]...

    #ls 常见选项
    -a #查看目录下的所有文件,包括隐藏文件
    -l #以长格式的方式显示文件的详细内容
    -h #以人性化的方式显示内容,配合-l使用
    -d #只列出目录名,不列出目录以下的内容
    -t #按修改时间进行排序
    -i #显示文件的inode(该文件在该分区的一个编号)

    ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

     习题:

    1.超级用户(管理员用户)提示符是__#__,普通用户提示符是__$_。


    2.linux关机重启的命令有哪些 ?
    linux关机命令 shutdown
    shutdown -h 10 #计算机将于10分钟后关闭,且会显示在登录用户的当前屏幕

    shutdown -h now #计算机会立刻关机
    shutdown -h 22:22 #计算机会在这个时刻关机
    shutdown -r now #计算机会立刻重启
    shutdown -r +10 #计算机会将于10分钟后重启
    reboot #重启
    init 0 #关机
    halt #关机
    linux重启命令 reboot

    3.如何查看当前所在的目录?
    [root@beua ~]# ls
    anaconda-ks.cfg


    4.如何快速从当前目录切换到家目录?
    cd
    cd ~
    cd /root


    5.如何快速返回上一次所在的目录?
    cd ..

    cd -


    6.在家目录下创建一个名为oldboy的目录,然后进入该目录
    [root@beua ~]# mkdir oldboy;cd oldboy


    7.在oldboy目录下进入根目录下的etc目录下的yum.repos.d目录
    [root@beua ~]# cd /oldboy
    [root@beua oldboy]# cd /etc/yum.repos.d/
    [root@beua yum.repos.d]#


    8.在当前所在的yum.repos.d目录快速返回到当前目录的上级目录(根目录下的etc目录)
    [root@beua yum.repos.d]# cd ..
    [root@beua etc]#


    9.在oldboy下创建一个名为student.txt的文件
    [root@beua ~]# cd /oldboy;touch student.txt

    10.在家目录下创建oldboy目录下名为oldboyedu的目录,然后将先前创建的名为
    student.txt的文件复制到家目录下
    [root@beua ~]# mkdir -p /oldboy/oldboyedu
    [root@beua ~]# cd ../oldboy
    [root@beua oldboy]# ls
    oldboyedu student.txt
    [root@beua ~]# cp /oldboy/student.txt /home


    11.在家目录下创建一个名为job的目录,并将先前创建的名为oldboy目录及目录下的文件
    一次性复制到job目
    [root@beua ~]#mkdir jobo
    [root@beua ~]# cp -r oldboy/. job


    12.将根目录etc下的resolv.conf和hosts文件一次性复制到job目录下
    [root@beua etc]# echo /etc/resolve.conf /etc/hosts | xargs -n 1 cp -v /job
    ‘/job’ -> ‘/etc/resolve.conf’
    ‘/job’ -> ‘/etc/hosts’


    13.返回到家目录,删除家目录下oldboy目录及该目录下的所有文件
    [root@beua etc]# cd
    [root@beua ~]# rm -rf oldboy


    14.查看根目录下etc下passwd文件所有内容
    [root@beua etc]# cat /etc/passwd

     

    15.分页查看passwd的所有内容
    [root@beua etc]# more /etc/passwd


    16.只查看passwd文件头部5行内容
    [root@beua ~]# head -5 /etc/passwd


    17.只查看passwd文件尾部5行内容
    [root@beua ~]# tail -5 /etc/passwd



     

     

     

     

     

     

  • 相关阅读:
    HTML DOM 12 表格排序
    HTML DOM 10 常用场景
    HTML DOM 10 插入节点
    HTML DOM 09 替换节点
    HTML DOM 08 删除节点
    HTML DOM 07 创建节点
    022 注释
    024 数字类型
    005 基于面向对象设计一个简单的游戏
    021 花式赋值
  • 原文地址:https://www.cnblogs.com/longren/p/10725772.html
Copyright © 2011-2022 走看看