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 22:15
下一篇 2016-06-09 22:15

相关推荐

  • httpd——事务

    http协议: http/0.9 ,http/1.0 ,http/1.1 ,http/2.0 http协议:stateless          服务器无法持续追踪访问者来源          &nb…

    Linux干货 2016-10-12
  • Linux进程管理

    一:进程的概念     1)进程:process,运行中的程序的一个副本的某部分,之所以说是副本的一部分是因为一个程序可以多个用户同时以不同格式运行,如两个用户都在运行ls,一个运行的是ls -h ,另一个运行的是ls -l,那么这两个用户运行的程序代码肯定是不一样的而且不是程序的所有代码;进程有生命周期; &nbsp…

    2017-03-26
  • 第六周作业

    请详细总结vim编辑器的使用并完成以下练习题 光标跳转 字符间跳转 h或向左箭头键 光标向左移动一个字符 j或向下箭头键 光标向下移动一个字符 k或向上箭头键 光标向上移动一个字符 l或向右箭头键 光标向右移动一个字符 翻屏 Ctrl+f 屏幕向下移动一页 Ctrl+b 屏幕向上移动一页 Ctrl+d 屏幕向下移动半页 Ctrl+u 屏幕向上移动半页 Ent…

    Linux干货 2017-01-22
  • corosync+pacemaker对mariadb实现高可用

    corosync+pacemaker对mariadb实现高可用 利用nfs共享存储,导出一个目录作为mariadb的数据目录,然后利用corosync+pacemaker对mariadb进行高可用 1、实验环境 2、实验前的分析 利用nfs导出目录作为mariadb的共享目录,要确保各个mariadb节点对该目录具有写权限,也就是要确保nfs服务器上有一个U…

    Linux干货 2016-11-24
  • vsftpd 配置文件的一些设置

    ftp:File Transfer protocol 文件传输协议 两个连接: tcp:命令连接 tcp:数据连接 主动模式:服务器端通过20端口主动连接客户端,客户端监听在于服务器端的建立连接的端口+1上,服务器工作在tcp/20 被动模式:客户端使用自己与服务器端建立端口+1上连接客户端的随机端口 防火墙上连接追踪 数据要流失化文本:文件流二进制 c/s…

    Linux干货 2017-09-10
  • 磁盘管理

    1、设备文件 设备文件:关联至一个设备驱动程序,进而能够跟与之对应硬件设备进行通信 设备号码: 主设备号major number,标识设备类型 次设备号minor number,标识同一类型下的不同设备 [root@localhost ~]# ll /dev/sd* brw-rw—-. 1 root disk 8,  0 Aug 25 …

    Linux干货 2016-09-01