Linux 基础知识

1、环境变量

2、帮助

3、时间

4、引用

5、命令历史

6、FHS

7、命令别名

8、Globbing文件名通配

9、命令,路径补全

10、快捷键

============================================

shell:是用户和linux(或者kernel)之间的接口程序,你在提示符下输入的每个命令都先由shell解释(命令语言解释器)然后传给linux kernel,

shell分类:sh,bash,csh,ksh,zsh等,常用为bash.

shell启动:在你成功登录系统后启动,并始终作为你与kernel交互手段,直到你退出系统,每个用户都有一个缺省的shell,在/etc/passwd中查看

bash:

1、环境变量:

    我理解是系统启动之后初始化系统为各类程序运行提供默认运行环境(参数或变量),比如PATH,PS等

    set:查看当前系统所设定的环境变量

    修改环境变量,以PATH为例:

        echo $PATH    //查看当前shell下,二进制程序要执行时,所搜索的路径,其他变量都可以以echo $变量名 这样的方式显示

[root@neolinux ~]# echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/mysql/bin:/usr/local/apache/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

        临时修改:export

[root@neolinux ~]# export PATH=/usr/local/apache/bin:/usr/local/apache/sbin:$PATH
[root@neolinux ~]# echo $PATH
/usr/local/apache/bin:/usr/local/apache/sbin:/usr/lib64/qt-3.3/bin:/usr/local/mysql/bin:/usr/local/apache/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

         永久修改:将export 命令直接写入家目录.bashrc文件中,~/.bashrc,或者/etc/profile等文件中

        #命令学习:echo,export,basename(取路径基名),dirname(取路劲目录名)

2、获取帮助

        shell命令分为内置命令和外部命令

            内置命令:在shell程序中实现的命令

            外部命令:在文件系统上,某位置有一个与命令名称对应的可执行程序

        内置命令:#help Command

        外部命令:#Command –help或者使用手册#man Command

        man的使用机制:

            翻屏

                空白键:向文件尾部翻一屏

                b键:向文件首部翻一屏

                回车键:向文件尾部翻一行

                k键:向文件首部翻一行

                Ctrl+d:向文件尾部翻半屏

                Ctrl+u:向文件首部翻半屏

            文本搜索:

                /搜索关键字:向文件尾部搜索

                ?搜索关键字:向文件首部搜索

                n:与搜索命令相同的方向,搜索下一个

                N:与搜索命令相反的方向,搜索上一个

            q:退出man帮助

        #命令学习:type,which,hash

3、时间

        查看当前系统时间date

        %y:两个数字显示年份(00...99),测试命令#date +%y
        %Y:四个数字显示年份,#date +%Y
        %m:两位数字显示月份    #date +%m
        %M:显示分钟    #date +%M
        %d:显示当日号数    #date +%d
        %H:显示小时(00..23) #date +%H
        %S:显示秒数    #date +%S
        %F:显示日期    #date +%F 2016-06-01  等于#date +%Y-%m-%d  //常用+%F-%H-%M-%S

        linux有两个时钟:

            硬件时钟:类似在主板上,由电池维持工作。

            软件时钟:开启时读取硬件时钟

            hwclock:

                    -s:以硬件时钟为准

                    -w:以软件时钟为准

        #命令学习:shutdown,reboot,halt,poweroff,mkdir,pwd

        #mkdir    创建目录

                -p:创建多级目录时,先创建父目录,在创建子目录

                -v:显示创建目录的过程

4、引用:

        ' ':单引号,表示强引用,单引号范围内变量不会进行替换,

[root@neolinux ~]# echo '$PS1'    //直接显示$PS1这四个字符
$PS1
[root@neolinux ~]#

        " ":双引号,表示弱引用,双引号范围内能够执行变量替换

[root@neolinux ~]# echo "$PS1"    //显示PS1环境变量的赋值
[\u@\h \W]\$
[root@neolinux ~]#

        “:反引号,拼音输入法模式下,波浪线那个按键,命令替换,引用命令的执行结果

[root@neolinux ~]# echo `pwd`    //先执行pwd命令,在将命令的执行结果给echo输出
/root
[root@neolinux ~]#

 5、命令历史

        bash保存了过去曾经执行过的命令列表,使用上下箭头可以翻看此前曾经执行过的命令。

        当前shell保存历史命令在用户家目录.bash_history

        查看历史命令:

            #history    //查看历史命令

                -d #:删除第#号个命令

                -c :清空历史命令

            #~/.bash_history

        快速调用之前执行过的命令,(常用):

            !!:执行上一条命令

            !Command:执行上一次执行Command命令

            !$:引用上一个命令的最后一个参数,或者按ESC键松开,在按.

        HISTSIZE:命令历史中可以保存的命令个数       

                echo $HISTSIZE    //显示,export或者配置文件修改

        HISTFILE:命令历史文件

        HISTFILESIZE:命令历史文件中可以保存命令的个数

        HISTCONTROL:控制命令的生成

6、FHS(Filesystem Hierarchy Standard)文件系统目录标准

        /bin:所有用户可执行的程序
        /usr/bin
        /usr/local/bin
        /sbin:管理员可执行的程序
        /usr/sbin
        /usr/local/bin
        /boot:存储系统引导文件:内核,ramfs文件,bootloader(grub)
        /dev:设备文件目录
        /etc:配置文件目录
        /home:普通用户目录,在此目录下,有与用户名同名的目录作为用户家目录
        /root:管理员家目录
        /lib,/lib64:库文件目录
        /proc:伪文件系统,内核参数的映射
        /sys:伪文件系统,

        linux文件类型:

普通文件 目录文件 链接文件 字符设备 块设备 管道文件 套接字文件
– or f d l c b p s

srwxrwxrwx 1 mysql mysql 0 Jun  1 17:29 mysql.sock

s rwxrwxrwx 1 mysql mysql 0 Jun 1 17:29 mysql.sock
文件类型(套接字文件) 权限(属主,属组,其他人) 硬链接数 属主 属组 文件大小 文件最后一次修改时间 文件名

        #命令学习:ls,cd,cat,tac.head,tail,more,less,cp,mv,rm,touch,stat,file

7、命令别名

        为一个命令与参数起另外一个名字

        #alias 别名='命令'    #alias cdnet='cd /etc/sysconfig/network-scripts/'

        #unalias 别名 取消命令别名

8、Globbing文件名通配

* ? [] [:upper:] [:lower:] [:digit:] [:alpha:] [:alnum:] [:space:] [:punct:] [^]
任意长度任意字符(也包括空) 任意单个字符 指定字符范围内的任意单个字符 所有单个大写字母 所有单个小写字母 0~9中一个数字 所有单个大小写字符

所有单个大小写字母或者数字

单个空白字符 单个特殊字符 范围外任意单个字符

    注意:?*表示至少有单个字符,例如:a?*b,匹配不到ab

9、路径,命令

        shell当你在输入命令的一部分或者路径的一部分,他就猜测到你是大概需要什么,可以通过按Tab显示或者补全,类似配置网络设备的命令补全,多按Tab就对了

10、快捷键

Ctrl+a Ctrl+e Ctrl+u Ctrl+k Ctrl+l Ctrl+c Ctrl+z
切换光标至行首 切换光标至行尾 删除光标至行首内容 删除光标至行尾的内容 清屏(clear) 取消或终止执行 暂停目前工,fg切回


原创文章,作者:nice_neo_linux,如若转载,请注明出处:http://www.178linux.com/16917

(0)
nice_neo_linuxnice_neo_linux
上一篇 2016-06-09
下一篇 2016-06-10

相关推荐

  • 8月4号作业

    正则表达式表示18位身份证号 egrep "\b[0-9]{17}(x|X|[0-9])\b" 正则表达式表示手机号 egrep "\b1[3,5,8,7][0-9]{9}\b" phone 正则表达式表示邮箱 grep -E "\b[[:alnum:]].*@[[:alnum:]]{2,3}.[[:alnu…

    Linux干货 2016-08-08
  • Linux系统认知

    前言 在认识Linux系统之前先介绍下计算机的组成构造及其功能: 1,简单来说计算机可以划分为软件系统和硬件系统: (1)软件系统自不必说就是各种不同的程序,协助用户更好地使用电脑。 (2)硬件系统指的是主机、显示器、鼠键等硬件设备。 2,按冯诺依曼体系可将计算机按逻辑构成分为: (1)CPU(运算器、控制器)。运算器是数据处理装置,用来完成对数据的算术运算…

    Linux干货 2016-09-20
  • shell脚本编程__bash的配置

    shell脚本编程__bash的配置   一、bash的配置文件:   按生效范围划分,存在两类:     全局配置: /etc/profile /etc/profile.d/*.sh /etc/bashrc    个人配置: ~/.bash_profile ~/.bashrc 二、she…

    Linux干货 2016-08-26
  • 高级文件管理系统

    1、 设定文件系统配额 在内核中执行: • 以文件系统即分区为单位启用 • 对不同组或者用户的策略不同 根据块或者节点进行限制: • 执行软限制(soft limit),限时限制 • 硬限制(hard limit) 初始化: • 分区挂载选项,针对用户或组:usrquota 、grpquota • 初始化数据库,也即是创建用户或组文件系统配额数据库:quot…

    Linux干货 2016-09-01
  • 马哥教育网络班19期+第八周课程练习

    1、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别。    主要功能:    网桥是一个局域网与另一个局域网之间建立连接的桥梁,属于数据链路层的一种设备。    集线器是可以将一些机器连接起来组成一个局域网的设备。   &n…

    Linux干货 2016-06-26
  • 关于大型网站技术演进的思考(十二)–网站静态化处理—缓存(4)

    原文出处: 夏天的森林   上篇我补充了下SSI的知识,SSI是一个十分常见的技术,记得多年前我看到很多门户网站页面的后缀是.shtml,那么这就说明很多门户网站都曾经使用过SSI技术,其实现在搜狐网站也还在用shtml,如下图所示: 由此可见SSI在互联网的应用还是非常广泛的。其实互联网很多网页如果我们按照动静分离策略拆分,绝…

    2015-03-11