前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux shell 基本命令

Linux shell 基本命令

作者头像
疯狂的技术宅
发布2019-03-27 16:07:54
2.2K0
发布2019-03-27 16:07:54
举报
文章被收录于专栏:京程一灯

shell是什么

  • Linux系统本身逻辑上可以两部分:内核和实用程序。内核从打开计算机自检时就驻留在内存,直到计算机关闭。每条命令实际都属于实用程序,当命令要执行时,才会由磁盘装入到内存,shell也是一种实用程序。
  • Shell负责执行终端请求的程序。
  • Shell在磁盘上搜索要执行的程序,直到找到位置,这是对于外部命令来讲。内部命令shell会饿直接执行。

基本命令

  • date命令:显示时间和日期,date显示周日期,月份,日期,时间和年份。
  • who命令:查看登录系统的用户信息。
  • echo命令:显示字符,Linux系统会忽略输出文本中多余的空格。

文件操作

Linux只能之别三种基本的文件类型:普通文件,目录文件,特殊文件。一个文件名中的字符数不能超过255个,超出后系统会忽略超出的字符。

  • ls命令:输出对应目录文件清单,参数可以是相对或决定路径,执行后输出对应路径下的文件列表。可以加-l参数强制获得单列式的输出结果,信息包括(文件状态,文件的链接数,文件所有者,搜有这所在的组,文件大小,最后修改时间,文件名),文件状态中第一个字符用来表示文件类型d,-分别代表着该文件是文件夹,普通文件,如果是b,c,l,p之一,则表示它是特殊文件。
  • cat命令:查看文件内容。
  • wc命令:统计文件所包含信息,输出的三个数字依次分别是行数,单词数和字符数,也可以使用-l来输出单词数,用-c来输出字符数,用-w来单独输出单词数。
  • cp命令:用来复制文件或目录,第一个参数是源文件路径,第二个参数为目标文件路径,ag: cp origin.txt ./test/origin.txt,也可以一次复用多个目录到目标目录,ag: cp test test1 ../tmp。
  • mv命令:移动文件/目录,参数格式与cp一样,如果目标文件名已经存在,则会覆盖。ag: mv oldname newname,也可以一次移动多个目录到目标目录,ag: mv test test1 ../tmp。
  • rm命令:删除操作,参数则是要删除的文件名,可以跟多个文件名以空格隔开,ag: rm 1.txt 2.txt。该命令也可以删除文件夹,需要加选项-r,ag:rm -r somedir,更多选项详见rm --help。

目录操作

  • pwd命令:显示当前工作目录。
  • cd命令:该命令用来改变当前工作目录,参数可以是相对路径和绝对路径。
    • cd ~进入默认路径
    • cd -进入上次工作目录
    • cd /home/work/test使用绝对路径进入test目录
    • cd ./test或cd test使用相对路径进入test目录
  • mkdir命令:创建目录,参数为要创建的文件夹名。可以加-p来创建多级文件夹。
  • cp命令:目录间复制文件,使用方法与文件cp命令一样,请见上文。
  • mv命令:移动目录/文件,使用方法与文件mv命令一样,请见上文。
  • ln命令:链接文件,提供一个简单的方式为一个文件赋予多个文件名,一般格式是ln from to,该命令把文件from与文件to链接起来。
    • 它与cp的区别在于,cp后是真是存在多份文件副本,而ln后在磁盘上只有一份。关于链接文件唯一的限制是,链接在一起的文件必须共享与同一文件系统,不然链接的时候会报错。文件系统可以执行df命令查看。
    • 如果要链接不同文件系统或网络中的不同系统中的文件,可以给ln加-s命令,这样可以建立一个符号化链接,符号化链接与普通链接唯一的区别是:符号化链接指向初始文件,如果初始文件被删除了,该符号化链接就不再起作用,但链接仍然会保留,符号化链接作为文件名维护,所以它的长度为文件名长度,并不是真实的文件大小。想要链接文件夹则可以使用该-s选项。
    • ln遵循跟cp和mv相同的格式,意味着可以把一串文件链接到一个目录下。ag: ln file1 file2 dir。
  • rmdir命令:删除目录,格式为rmdir dirname,唯一的限制是要删除的文件夹中不能包含文件。如果要删除一个目录及其下面所有内容,则可以使用rm -r dir来替代。

文件名替换

  • * 通配符,对于文件名来讲,它可以匹配0个或以上的字符,cat a*意味着会把a开头的文件内容显示出来。
  • ? 单字符匹配,cat a?表示把文件以两个字符命名的并且首字母是a的文件内容显示出来。
  • 匹配单字符的另一个中方法是把药匹配的字符列在方括号中,如[abc]匹配一个字符,a,b,c,也可以使用[a-z]但限制是前一个字符序号必须小于后一个字符的,如果在[!中,则表示反匹配,既可以匹配除方括号中所列字符以外的任何字符。

标准输入/输出及输入/输出重定向

  • 标准输入和标准输出:许多Unix系统从终端接受输入,并把结果发到终端输出。部分命令也是如此,who命令把登录到系统的用户清单写入标准输出设备中。
  • 输出重定向:命令的输出通常提交到标准输出设备,也可以很方便的转向一个文件来代替。如who > console.txt,这时候who命令得到的用户信息保存到了console文件中,标准输出就没有显示了,值得注意的事,写入文件会覆盖文件之前的内容,如要追加而不是覆盖,请使用重定向添加字符>>,
  • 输入重定向:一般在正常情况下从标准输入设备接受输入的命令可以使用<来把输入重定向到一个文件。ag:sort < a4.txt。

管道

  • Linux系统可以吧两条命令的效果连接起来,这种连接称为管道,它可以把一条命令的输出作为另一条命令的输入。管道效果由字符|实现。如之前可以使用who > users与wc -l users两条命令和一个中间文件完成的工作,现在可以直接使用who | wc -l来完成,是不是很方便~
  • 过滤器:Unix术语中过滤器通常指能够从标准输入接受输入,对输入处理后,把结果写入标准输出的任何程序。简而言之,过滤器是能用到管道中其他两个程序之间的任何程序。因此wc,cat,sort等可看做过滤器,而ls不行。

标准错误

  • 除了标准输入和标准输出,还有另一种标准设备,称为标准错误,它也是终端。

命令的其他细节

  • 一行多条命令::多条命令间使用;分隔即可,如who > users;wc -l users。
  • 命令发送到后台:在命令后跟&则表示命令在后台执行,不用等待有些耗费一些时间才能返回结果的命令,可以即刻释放终端继续处理其他工作。如果命令需要从标准输入读取输入,则它会定制执行,等待被调到前台执行。执行该命令后会返回两个数字,第一个为工作好,第二个为进程标识号。
  • ps命令:该命令可以告诉用户有关系统中正在运行的进程信息。不带选项的命令只显示属于自己进程的信息,显示出的信息有:进程标识号PID,终端号TTY,进程已经运行的分钟和藐视TIME,进程的名字COMMAND。如果加上-f选项,ps命令会显示更多的进程信息。

本章命令总结

file代表文件,file(s)代表一个或多文件;dir代表一个目录,dir(s)代表一个或多个目录

  • cat file(s):显示文件file(s)的内容,如未指定,显示标准输入的内容
  • cd dir:工作目录转换到dir
  • cp file1 file2:把file1复制到file2
  • cp file(s) dir:把file(s)复制到目录dir中
  • date:显示如期和时间
  • echo args:显示args
  • ln file1 file2:把file1链接到file2
  • cp file(s) file2:把file(s)链接到dir中
  • ls file(s):显示file(s)中的文件清单
  • ls dir(s):显示目录dir(s)中的文件清单
  • mkdir dir(s):建立目录dir(s)
  • mv file1 file2:把file1移动到file2,如果是统一目录则是重命名
  • cp file(s) dir:把file(s)移到目录dir中
  • ps:显示活动进程的信息
  • pwd:显示当前工作目录
  • rm file(s):删除文件file(s)
  • rmdirs dir(s):删除目录dir(s)
  • sort file(s):将文件file(s)中的行排序,若未指定,则排序标准输入
  • wc file(s):对file(s)的行,单词或字符计数
  • who:显示登录到系统的用户

往期精选文章

ES6中一些超级好用的内置方法

浅谈web自适应

使用Three.js制作酷炫无比的无穷隧道特效

一个治愈JavaScript疲劳的学习计划

全栈工程师技能大全

WEB前端性能优化常见方法

一小时内搭建一个全栈Web应用框架

干货:CSS 专业技巧

四步实现React页面过渡动画效果

让你分分钟理解 JavaScript 闭包



小手一抖,资料全有。长按二维码关注京程一灯,阅读更多技术文章和业界动态。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-09-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 京程一灯 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • shell是什么
  • 基本命令
  • 文件操作
  • 目录操作
  • 文件名替换
  • 标准输入/输出及输入/输出重定向
  • 管道
  • 标准错误
  • 命令的其他细节
  • 本章命令总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档