红联Linux门户
Linux帮助

我常用的linux命令(长期更新)

发布时间:2015-09-11 15:49:55来源:linux网站作者:Code_My_Life

每人个的工作环境可能不一样,习惯使用的命令一般也就不一样。linux命令确实多,想要完全掌握还是比较困难的一件事情。然而命令很多时候是触类旁通的,很多命令我们看过,n个月也不会用一回,这些命令实在没有必要去掌握的很熟练。下面我就说一下我常用的linux命令吧。

我常用的linux命令(长期更新)


ls   [选项]   目录路径  

这个命令是list简写,在这里是查看目录中的文件的意思。我一般登录到服务器上,第一个命令就是用这个。主要是看看当前用户的目录下,都有那些程序和文件,迅速了解情况,以免登录错了服务器。ls默认并不是显示所有的文件,隐藏文件我们是看不到的。为了看到隐藏文件,如用户当前目录下的 .ssh文件夹,那么我们就要使用 ls -a 命令。a是all的简写,其实你也可以用 ls -all,不过是为了少敲点字母而已。不过使用ls -all的时候,会把所有文件的属性也都显示出来了。


cd 改变目录 

这个命令是change directory 的简写,在这里是切换目录的意思。命令格式:cd 目录名。cd  ~  进入用户主目录,用户初始登录到系统中时目录就是用户主目录,而用户可以用~字符来引用自己的主目录。当前目录用“.”表示,其父目录用“..”表示。退到上一级目录就是 cd ..  ;   返回进入此目录之前所在的目录使用cd  -   ;返回上两级目录 cd ../..  。 为了确定你所在的目录,你可以键入pwd,这样你就看到你目前所在的目录了。大家都知道为什么使用这个命令吧,不多说了。


cp  [选项]  源文件目录  目标文件目录 

这个命令是copy的简写。该命令把源文件复制至目标文件,或将多个源文件复制至目标目录。看链接吧 点击打开链接。大家在windows下经常复制文件,粘到另一个地方,其实这个也差不太多,只是命令界面而已。我们经常要把文件移来移去的,没有这个命令,不好办。


mv  [选项]  源文件或目录  目标文件 

这个命令是move的简写。mv命令用来有两个功能,1、把文件(或目录)移动到另外一个目录中;2、变更文件(或目录)名称。当“目标”参数类型是文件时,实现重命名。源文件(或源目录)只能有一个,它将所给的源文件(或目录)重命名为目标文件名。当“目标”参数类型是已存在的目录名称时,源文件(或目录)可以有多个,mv命令将把源文件均移至目标目录中。呃,这个命令我常用来给文件重命名。什么时候会发生嘞?我编译出来的程序是一个文件名,但是我希望我的程序在服务器上是另一个名称,或者一个服务器上我开了几个同样的程序。为了搞清楚每个程序占用了那个端口,我经常给文件加上一个端口名,ps一下我就知道那些程序在跑了。移动文件也用,比如我编程出来的一件文件,比较muduo的lib文件之类的,我希望直接放到/usr/lib中,那么这个命令就有用了。当然你也可以先cp,再rm,如果不怕麻烦的话。


rm  [选项]  文件 

这个命令是remove的简写。删除一个目录中的一个或多个文件或目录(文件夹)。嗯,我很喜欢参数 -rf , 强行删除目录dir下的所有文件、子目录下的所有文件和目录、删除dir本身。省得系统会先询问是否删除什么的。这个命令,我经常用在删除一些不用的文件啊,或者服务器上我不再使用的程序啊什么的。反正你得会删除文件吧,那么这个命令你必须得会了。注意的是,rmdir(删除空目录)是一个废柴,我不喜欢用,rm -rf 就够用了。


chmod [选项] [操作对象] [操作符] [权限] 文件名 

这个命令是change mode 的简写。chmod 命令用于改变文件或目录的访问权限。这个是linux的一个优点吧,当然也是一个缺点,文件权限问题。不多说了,大家用的时候再查一查吧。我经常向服务器上传可执行程序。scp有一个悲剧就是,你传过去的文件,可执行权限没有了。不能执行,我这程序不是白写了,所以我要把可执行的权限找回来。这个时候,chmod  +x 就该出场了,对吧。经常用的,想忘也也做不到啊。


mkdir  [选项]  目录名称 

这个命令是make directory的简写。使用mkdir命令创建指定的目录名,要求并且指定的目录名不能是当前目录中已有的目录。啥时候用嘞?我在服务器上跑了不少的程序,都乱糟糟的话到主目录下,也太不强迫症了吧。所以我给每个程序都建了文件夹,程序放其中。文件夹怎么建嘞?就是mkdir xxx。好吧,你的文件夹就叫xxx。写博客好累啊,明天再补充。


netstat [选项]

这个命令是network state的简写。netstat可以用来显示网络连接、路由表、接口统计、伪连接和组播成员等。目前这个命令官方已经不再更新了,将来很可能它要被ss命令和ip命令所取代。不过目前使用起来,还是挺好的。我一般主要是看我的服务器的网络连接状态,如我的服务器上目前连接了多少个客户端?去翻看日志真是真low了,不如用这个命令netstat -ant| grep '80' | wc -l  。我这里简单解释一下。-a (all)显示所有选项 ; -n 拒绝显示别名,能显示数字的全部转化成数字;-t (tcp)仅显示tcp相关选项;grep命令比较强大,简单讲就是把匹配参数的行打印出来,这个命令回头再聊。咳,咳,咳,到了wc(word count)命令了,这个也可以回头聊哈,知道 wc -l 是统计行数的,就可以了。


su [选项]... [-] [USER [ARG]...] 

这个命令是switch user的简写。 我用它来切换用户账号,比较我现在的账号是root,我现在想切换到git账号下,我使用su git就可以了。


locate [选项][样式] 

locate命令可以在搜寻数据库时快速找到档案,数据库由updatedb程序来更新,updatedb是由cron daemon周期性建立的,locate命令在搜寻数据库时比由整个由硬盘资料来搜寻资料来得快,但较差劲的是locate所找到的档案若是最近才建立或 刚更名的,可能会找不到,在内定值中,updatedb每天会跑一次,可以由修改crontab来更新设定值。


Shell常用命令大全之入门篇:http://www.linuxdiyf.com/linux/11946.html

Linux系统入门教程:Linux常用命令的使用:http://www.linuxdiyf.com/linux/9839.html

Linux常用命令大全:http://www.linuxdiyf.com/linux/6316.html