Linux入门

Linux入门

用户与管理:

    root用户:超级管理员,权限已接近完整的系统控制

      对系统的损害几乎有无限的能力,除非必要,不要使用root登录机器

    普通用户:权限有限


终端 terminal:

  • 服务器非必要部件 

  • 用户与主机交互,必然用到的设备

    1. 物理终端:直接接入本机的显示器和键盘设备 /dev/console 虚拟终端:

      附加在物理终端之上的以软件方式虚拟实现的终端,设备文件路径:/dev/tty#,

      CentOS 6默认启动6个虚拟终端 Ctrl+Alt+F#: [1,6] 

      图形终端:属于虚拟终端,附加在物理终端之上的以软件方式虚拟实现的终端,但额外会提供桌面环境; 

      模拟终端:图形界面打开的命令行以及基于ssh协议或 telnet协议等远程打开的界面,设备文件:/dev/pts/# [0, ∞)

  • 查看当前的终端设备:tty


什么是shell?

  •  Shell 是Linux系统的用户界面,提供了用户与内核进行交互操作 的一种接口。它接收用户输入的命令并把它送入内核去执行。 

  •  shell也被称为LINUX的命令解释器(command interpreter)

  •  shell是一种高级程序设计语言

  如图所示:

blob.png


bash shell:

    bash 是GNU计划重要的工 具软件之一,目前也是 Linux标准的shell ,与sh兼容。 

    

    显示当前使用的shell命令:  echo ${SHELL}
    显示当前系统所使用的所有shell: cat /etc/shells

命令运行过程:

    输入命令后,回车,shell程序找到键入命令所对应的可执行程序或代码 ,并由其分析后提交给内核分配资源将其运行起来 

    shell中可执行的命令分为两大类,可以用  type COMMADN 查看

        内部命令:由shell自带的,而且通过某命令形式提供 enable命令可以启用或禁用内部命令 

        外部命令::在当前系统的某文件系统路径下有对应的可执 行程序文件

    hash命令:搜寻到的外部命令路径结果缓存至kv(key-value)存储中 

    

  注意:

  •  多选项,以及多参数和命令之间使用空白字符分隔 

  •  取消和结束命令执行:Ctrl+c,Ctrl+d

  •  多个命令可以用;符号分开 

  •  一个命令可以用\分成多行


具有补全功能的Tab键:

    命令补全

    路径补全


bash的快捷键:

Ctrl+l  清屏,相当于clear命令 
Ctrl+c 取消命令的执行 
Ctrl-a 会移动到命令行的最前面 
Ctrl-e 会移动到命令行的最后面 
Ctrl-u 会删除到行首
Ctrl-k 会删除到行尾
arrow   ctrl-b  ctrl-f会向左或向右移动一个字符 
Esc-b 左移一个单词 
Esc-f 右移一个单词

   


Linux一些简单的命令:

    cal -显示日历 

    screen命令:

      功能:用于协同工作,必须登录同一个用户 

        打开新的screen: screen –S [SESSION] 

        加入会话: screen –x [SESSION] 

        退出并关闭screen: exit 

        剥离当前screen: Ctrl+a,d 

        显示所有已经打开的screen: screen -ls 

        恢复某screen screen -r [SESSION]

    echo命令:

      功能:功能很强大,这只是一小部分功能,如显示字符

           echo会将输入的字符串送往标准输出。 

           输出的字符串间以空白字符隔开, 并在最后加 上换行号 

      echo "$VAR_NAME": 变量会替换,双引号表弱引用 

      echo '$VAR_NAME': 变量不会替换,强引用 

       $echo –e “Enter the file name: \c” ## echo 需要使用-e 参数来打印转义字符.

echo命令选项:
       -n 不在字符的最后自动换行 
       -e 若字符串中出现以下字符,则特别加以处理,
        而不会将它当成一般文字输出: 
        \a 发出警告声
        \b 退格键 
        \c 最后不加上换行符号 
        \n 换行且光标移至行首 
        \r 光标移至行首,但不换行 
        \t 插入tab 
        \\ 插入\字符
        \0nnn 插入nnn(八进制)所代表的ASCII字符 
            echo -e "\033[43;31mred color\033[0m" 
        \xHH插入HH(十六进制)所代表的ASCII字符

命令行扩展、被括起来的集合:

     命令行扩展:$( ) 或  :把一个命令的输出打印给另一个命令的参数 

    $ echo "This system's name is $(hostname) " 
    This system's name is server1.example.com
    $echo "i am whoami " 
    i am root

 

    括号扩展:{ } :打印重复字符串的简化形式 

     $ echo file{1,3,5}
     file1 file3 file5 
     $ rm -f file{1,3,5}

类似文章