| 
 | 
 
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册  
 
x
 
bash及特性:(shell) 
        shell什么时候开始启动:用户登录完成后,需要使用系统资源,程序只由一个,进程可以有多个;进程相当于程序的副本。谁用就可以拿来复制一个,如果用三个(可相同也可不同)身份登录,其实相当于三个进程,这三个进程彼此是不相干的, 
        Linux系统还有一个特性,允许同一个用户账号登录多次,而且每个账户登陆的进程都是各自独立的shell,因为他们是三个进程,每个进程只认为当前系统上所运行的程序只是他自己;在每个进程看来,当前主机上只存在内核和当前进程,进程可以同名,只要进程号不同即可,类似全国有很多个张伟,但是身份证号是独一份的; 
        进程是程序的副本,进程是程序执行的实例。程序运行起来才叫进程,进程是有周期的,从启动开始到中止那一刻结束,这个过程是由内核来管理的, 
         
        bash:type bash :bash is /bin/bash,bash本身是个路径,bash 本身是个外部命令,本身自带的叫内部命令,shell本身是个外部程序,当shell被启动起来后,shell自身还带有其他很多命令的CD,这些都称为自由命令, 
 
        用户工作环境:不同的用户各自登陆了系统,他们都可以默认shell,但是他们的工作环境设定却可以各不相同,(除了管理员默认#,普通用户是$符号)大环境相同,小环境各不相同。bash可以支持用户自定义环境 
         
        在shell中分有shell和子shell,如果我在shell中执行了bash,那相当于是打开了一层shell,此时使用pstree查看进程会发现是在子shell中运行的pstree,使用exit可以退出当前子shell,再使用exit退出登录,再exit就是退出进程。 
         
        一般对于子shell的设定对父shell不生效,对于父shell的设定对子shell也同样不生效 
 
        bash都支持用户对自己的工作环境做装饰, 
                1.命令历史,执行过的命令只需要使用上下箭头就可以切换到历史命令 
                2.管道:支持管道重定向, 
                3.支持命令别名,给命令起另外一个名字 
                4.支持命令行编辑 
                5.支持命令行展开 
                6.支持文件名通配 
                7.支持使用变量 
                8.支持编程:可以使用多种命令使用以某种程序逻辑组合起来,进行编程, 
                                         
 
bash特性: 
1.命令行编辑: 
命令光标跳转 
        ctrl+a:命令行编辑直接跳到命令行首 
        ctrl+e:命令行编辑跳到命令行末 
        ctrl+u:删除光标至命令行首 
        ctrl+k:删除光标至命令行末 
        ctrl+键盘左键,右键:光标往前跳一个单词,往后跳一个单词 
        ctrl+l:清屏 
 
命令历史:(所有的历史命令都在内存缓冲区,正常退出的时候,所有的命令都会放到家目录里的.bash-history里去) 
        history:查看历史使用的命令 
        history -c:清空命令历史 
        history -d 500:删除第500个命令 history -d 100 3 删除第100,101,102个history 
        history -w:将缓存区的历史命令写到.bash_history文件中去 
 
环境变量: 
PATH:命令搜索路径 
HISTORIZE:命令历史大小(默认是1000条命令)    echo $HISTORIZE :显示变量,命令历史大小  
 
命令历史的使用技巧 
        !100:执行第100条历史命令 
        ! -100:执行倒数第100个命令 
        !!:执行上一条命令; 
        !str:执行命令历史中最近一个以指定字符串开头的命令 
        !$:引用前一个命令的最后一个参数      按一下esc松开后再按一下.就会出现上一个参数,或者同时按住ALT+.也会出现上一个使用过的参数 
         
 
命令补全/目录补全:TAB 
        前提:打头的这些字符一定要唯一能标识这个命令,如果不唯一的时候,连续敲击两次TAB键,就可以显示所有敲击下开头的所有命令 |   
 
 
 
 |