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.16

    for 循环是相对比较简单的循环,任何一个循环里面都可以嵌套循环,用for可以解决简单逻辑上的任何循环 。 有两种基本格式:for i in " ";do         或者dor((i=0;i<=9;i++))可以嵌套if或者while等循环 if循环。最重要的是判断的条件,if意为如果什…

    Linux干货 2016-08-19
  • 文本处理工具练习题(包含正则)

    正则练习题(包含文本处理练习题) 问题 找出ifconfig命令结果中本机的所有IPv4地址  查出分区空间使用率的最大百分比值 查出用户UID最大值的用户名、UID及shell类型 查出/tmp的权限,以数字方式显示 统计当前连接本机的每个远程主机IP的连接数,并按从大 到小排序 答; ifconfig | grep -o '[0-9]\…

    Linux干货 2016-08-08
  • 第一周作业

    作业

    Linux干货 2018-03-20
  • 文件共享服务之SAMBA

    文件共享服务之SAMBA 文件共享服务之SAMBA 一、samba出现的意义 二、samba协议描述 三、samba为客户端的实现 四、samba为服务端的实现 五、使用图形界面配置SAMBA 一、samba出现的意义 首先nfs实现系统文件挂载linux与linux之间,linux到windows之间实现的并不是那么理想 FTP可以实现linux和wind…

    Linux干货 2016-04-19
  • ip命令详解

      Linux中的ip命令功能强大,可以完成接口配置、路由管理等任务。   格式:ip [ OPTIONS ] OBJECT { COMMAND | help }   下面使用ip命令来完成一些常用的操作:     1、查看接口状态       ip link show [设备名…

    Linux干货 2016-01-14