第七讲——linux基本命令 本文共有2161个字,关键词: 上一节我们讲到了使用cd命令可以进行目录的切换,当然,对象是绝对路径,不过有两个目录是除外的 1 当前目录“.” ./ 表示当前目录 2 上一级目录(父目录) cd .. 可以切换到上一级目录 好了现在我们可以自由的切换并且显示目录内的内容了。那么现在是时候告诉大家文件类型在哪里显示了 我们先进入/etc 目录下,再使用ls -l 命令,请记住,在当前目录下使用ls命令参数是可以省略的。 每一行的前面有十个字符,什么短横线优势r又是w啥的,眼睛都看花了…… 好了,说正事,第一个字符就是我们之前讲的文件的类型,如果想查看当前目录的信息则使用ls -d,当然也可以ls -d -l,但是一般来讲,我们在同一个命令中一个短横线的选项是可以合并的,,比如这样用ls -dl。 这样查看文件的类型我感觉有点累,而且有些眼花缭乱,而file命令就就解决了这一繁琐的步骤,就能告诉我们想要的信息,当然是英文显示的,额……学习英语很重要、很重要、很重要。 既然我接触了命令这玩意儿,那么就得知道啥叫命令以及命令的类型。 命令是什么? 其实命令就是一个可执行的程序,我们在CLI中键入命令回车时,系统会从环境变量里定义的目录下去找这个命令,并执行。这里提到的环境变量,简单的说环境变量就是定义当前用户工作环境的,变量就会有变量名,环境变量的变量名是PATH,里面存储了以冒号为分隔符的多个路径。 命令的类型: 在linux中,命令分为内置命令,我们之前讲了shell其实是一个命令解释器,所以这些内置命令是在shell上运行起来的,换一个shell环境命令可能就不是那样的了,所以这里说的内置命令是集成在shell中的命令,我们要知道操作系统内核是不提供命令的。 外部命令: 外部命令在文件系统的某个路径下会有与之对应的的同名的可执行文件。系统为了让用户方便的使用这些命令就给我们内置了一种机制,也就是环境变量,存放命令的目录加入环境变量里后,我们就不需要在一个命令前面输入冗长的路径,这个机制大大的提高了管理员的工作效率。 我们需要知道的是,当我们执行一个命令的时候,系统就会挨个从环境变量里保存的目录下查找一个命令,直到第一次找到为止,也就是说,两个同名的命令只有一个会被执行,被执行的那个命令的存放目录通常在PATH中靠前。 难道说每一次执行命令都要去目录中查找嘛?那得浪费CPU多少时间? 在linux操作系统中,会将使用过的命令映射到一个连续的地址空间上,并以关键字记录其位置,形成一个散列,这个就比较诡异了,不论其中的数据量多少,每一个数据被找到所消耗的时间是相等的,这玩意儿叫hash,从hash中查找数据的速度为O(1),这个O(1)就是表示,在hash表中查找任何一个文件花费的时间是相等的。 我们怎么才能知道一个命令属于外部命令还是内置命令呢? type命令 解决了这一问题,type的使用方法很简单: type 命令 将相应的命令进行type,就会知道这个命令到底是哪里的,如果是内置命令则会显示一串英文字符,其大意就是这是一个内置命令,如果是外部命令,则会显示一个命令的绝对路径。 这些绕来绕去的命令很是古怪啊,感觉就不是一般人用的……是的这本来就不是给一般人用的操作系统,忍一忍,不然遍地都是高手哪还有咱的立身之处。 「一键投喂 软糖/蛋糕/布丁/牛奶/冰阔乐!」 赞赏 × 几人行 (๑>ڡ<)☆谢谢老板~ 2元 5元 10元 50元 100元 任意金额 2元 使用微信扫描二维码完成支付 版权声明:本文为作者原创,如需转载须联系作者本人同意,未经作者本人同意不得擅自转载。 给自己讲linux 2016-12-07 评论 1487 次浏览