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

相关推荐

  • Homework Week-14 iptables及tcpwraper访问控制

    系统的INPUT和OUTPUT默认策略为DROP; 1、限制本地主机的web服务器在周一不允许访问;新请求的速率不能超过100个每秒;web服务器包含了admin字符串的页面不允许访问;web服务器仅允许响应报文离开本机; iptables -A INPUT -d 192.168.1.101 -p …

    Linux干货 2016-12-05
  • N25-第七周博客作业

    1、创建一个10G分区,并格式为ext4文件系统; (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl;(2) 挂载至/data/mydata目录,要求挂载时禁止程序自动运行,且不更新文件的访问时间戳; 查看当前分区情况 [root@han ~]# fdisk -l Disk /dev/sda: 42…

    Linux干货 2017-02-23
  • 20160808作业

    1、删除/etc/grub2.conf文件中所有以空白开头的行行首的空白字符      2、删除/etc/fstab文件中所有以#开头,后面至少跟一个空白字符的行的行首的#和空白字符      3、在/root/install.log每一行行首增加#号  &nbs…

    Linux干货 2016-08-11
  • yum与rpm生产中最频繁使用

    yum 命令 使用方法: yum [选项] [包名称] 常用选项: install #安装软件,后面跟包名称,例如:yum install wget 安装wget软件包list #列出所有软件,一般和grep一起使用,例如:yum list | grep java ,查看所有java安装包,一般情况下不使用search,grep可以更大范围搜索包,例如只记得…

    Linux干货 2017-04-18
  • 基于lamp实现wordpress(php-rpm)与phpMyAdmin(pph-rpm+https支持)

    前言    踩了好多坑终于把想象中的样子搭建出来了。真的是,只有遇到问题了,然后扎耳挠腮把问题解决了,才是真的学到了。此次环境我们采用lamp架构,并且通过fastcgi让httpd和php进行通信。当然所有的一切都是在同一台主机上实现。本次安装的应用是phpMyAdmin-4.4.14.1和wordpress-4.3.1

    Linux干货 2016-12-26
  • 免费翻墙 [精]

    本人在hostus上买了一个国外的vps,花了一上午把Google给做好,可以访问g.abcdocker.com进行搜索,因为是使用nginx代理进行翻墙。网上的文章也很乱,很不好整理。 可以可以使用g.abcdocker.com上Google查阅资料。(无法观看视频) www.abcdocker.com

    2017-06-17