linux的命令很多,但我们常用的linux命令却不是很多,掌握常见的linux命令,提高我们的工作效率。之前一直在使用,但没有总结过,现在总结一下比较简单和常见的命令。命令输完没有错误提示,则表示命令执行成功。
一.和目录/文件相关类
1 .cd :进入某个文件夹,进行路径切换
-
cd aaa
进入aaa目录下 -
cd ~
直接回到根目录 -
cd ..
回到上一级目录
2.mkdir:创建某个文件夹,后面直接跟要创建的文件夹名。
3.cp:复制命令
-
复制单个文件到文件夹
cp的用法 - 复制文件夹到文件夹中,加上参数-r
- 更多的用法,可以使用
cp --help
命令来查看
4.rm删除命令
- 删除单个文件,用法: rm 文件名
- 删除文件夹,用法:rm -r 文件夹名
- 强制删除文件夹,用法:rm -rf 文件夹名
5.mv 把文件或文件夹移到别的地方,也可以作重命名用
-
将文件夹重命名
将文件夹t重命名为aaa -
将文件夹移到另外一个文件夹中
将aaa移到temp中 - mv 还可以移动文件和重命名文件,同上
6.pwd:显示当前所在的目录
7.ls:显示当前文件夹里的内容
ls -l
显示详细信息,包括日期、大小、权限、所有者等;
ls -a
这会显示隐藏文件,即文件名是以 . 点开头的文件,这些文件或文件夹平时是不显示的;
8.tar:tar包文件命令
-
tar -cf all.tar *.txt
这条命令是将所有.txt的文件打成一个名为all.tar的包。-c是表示产生新的包,-f指定包的文件名
-
tar -tf all.tar
这条命令是列出all.tar包中所有文件,-t是列出文件的意思
列出tar包内容 -
tar -rf all.tar *.gif
这条命令是将所有.gif的文件增加到all.tar的包里面去。-r是表示增加文件的意思。 -
tar -xf all.tar
这条命令是解出all.tar包中所有文件,-x是解开的意思
9.zip:zip包命令
压缩文件
语法:zip 压缩后的文件名 被压缩的文件
eg:zip text.zip *.text
将后缀为text的文件压缩在text.zip中递归压缩一个目录及目录的文件:
语法: ** zip -r 压缩的文件名 被压缩的目录**
eg:zip -r log-dir.zip /var/log/
解压缩zip文件
语法:** unzip 压缩文件**
eg:unzip log-dir.zip
如何查看压缩包中的内容和文件
eg :unzip -l log-dir.zip
如何使用-P 参数来对压缩文件进行设置密码
语法:** zip -p 密码 压缩文件名.zip 被压缩文件**
eg:zip -P 123456 log-protect.zip /var/log/
在解压缩的时候需要输入密码才能解压。使用参数-e来对压缩文件设置安全密码
eg:zip -e log-secure.zip /var/log/*
如何检查压缩文件的完整性
unzip -t file-name.zip**
10.find:在一个目录(及子目录)中搜索文件,可以指定一些匹配条件,如按文件名、文件类型、用户甚至是时间戳查找文件。
- 按文件名查找。
eg:find /dir -name filename
表示在/dir目录及其子目录下面查找名字为filename的文件
- 按照文件权限来查找文件。
eg :find . -perm 211 –print
在当前目录下查找文件权限位为755的文件,即文件属主可以读、写、执行,其他用户可以读、执行的文件
更多find 的用法请戳这篇博客
11. grep命令可以指定文件中搜索特定的内容,并将含有这些内容的行标准输出。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。
12. less查看文件内容,可以用 [pageup] [pagedown] 等按键的功能来往前往后翻看文件,适合大文件
less和more的区别:
more:只能向后看文件,不能前翻
less:既可以向前看文件也可以向后看
- 查看文件
less a.txt
- ps查看进程信息并通过less分页显示
ps -ef |less
- 查看命令历史使用记录并通过less分页显示
history | less
- 浏览多个文件
less a.txt btxt c.txt
13. tail:用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。
显示文件末尾内容:显示文件最后5行的内容
命令:tail -n 5 a.txt
从第5行开始显示文件
命令:tail -n +5 b.txt
循环查看文件内容
命令:tail -f test.log
14. tree以树状图列出目录的内容
语法:tree (选项) 参数
各项参数详见文章,使用之前需要用sudo apt-get install tree
安装
二.账号操作
1. su:切换成root身份
su 和su -的区别:
前者只是切换了root身份,但Shell环境仍然是普通用户的Shell;而后者连用户和Shell环境一起切换成root身份了。
2. sudo:切换为管理员。
管理员可以授权于一些普通用户去执行一些root执行的操作,而不需要知道root的密码,它依赖于/etc/sudoers这个文件,可以授权于用户在主机上能够以管理员的身份执行什么样的管理命令,而且是有限的。这个文件相当于就是一个授权表。
已经授权的普通用户可以使用 **sudo -l **来查看自己可以执行那些命令
3. whoami用于知道当前的用户是谁
4. passwd:用于修改用户的密码
三.Ubuntu的包管理
详细信息请戳这篇文章
四.进程相关
1. ps命令用来列出系统中当前运行的那些进程
语法:ps [参数]
eg: ps -A
显示所有进程信息
ps -u root
显示指定用户信息
ps -ef
显示所有进程信息,连同命令行
ps -ef|grep ssh
ps 与grep 常用组合用法,查找特定进程
ps -l
将目前属于您自己这次登入的 PID 与相关信息列示出来
ps aux
列出目前所有的正在内存当中的程序
ps -axjf
列出类似程序树的程序显示
ps aux | egrep '(cron|syslog)'
找出与 cron 与 syslog 这两个服务有关的 PID 号码
2.kill 命令用于杀死进程。
语法:kill[参数][进程号]
列出所有信号名称
命令:kill -l
说明:KILL 9 强制终止先用ps查找进程,然后用kill杀掉
命令:kill 3268
(进程号)
3)彻底杀死进程
命令:kill –9 3268
说明:init进程是不可杀的
五.系统信息
1. top显示当前系统正在执行的进程的相关信息,包括进程ID、内存占用率、CPU占用率等
语法:top [参数]
显示进程信息
命令:top
显示 完整命令
命令:top -c
以批处理模式显示程序信息
命令:top -b
以累积模式显示程序信息
命令:top -S
设置信息更新次数
命令:top -n 2
说明:表示更新两次后终止更新显示设置信息更新时间
命令:top -d 3
说明:表示更新周期为3秒-
top -p 245
查看某进程的详细信息
2.df命令用来检查文件系统的磁盘空间占用情况,使用权限是所有用户。
-
显示磁盘使用情况
命令:df
df的单独使用 以inode模式来显示磁盘使用情况
命令:df -i
显示指定类型磁盘
命令:df -t ext3
:列出各文件系统的i节点使用情况
命令:df -ia
说明:
- -h更具目前磁盘空间和使用情况 以更易读的方式显示
- -H根上面的-h参数相同,不过在根式化的时候,采用1000而不是1024进行容量转换
- -k以单位显示磁盘的使用情况
- -l显示本地的分区的磁盘空间使用率,如果服务器nfs了远程服务器的磁盘,那么在df上加上-l后系统显示的是过滤nsf驱动器后的结果
- -i显示inode的使用情况。linux采用了类似指针的方式管理磁盘空间影射.这也是一个比较关键应用
3.uname命令用于打印当前系统相关信息(内核版本号、硬件架构、主机名称和操作系统类型等)。
语法:uname(选项)
关于选项的内容参见:http://man.linuxde.net/uname
六.网络相关
1. ping通常用来测试与目标主机的连通性,执行ping指令会使用ICMP传输协议,发出要求回应的信息.
命令格式:ping [参数] [主机名或IP地址]
2. telnet命令用于登录远程主机,对远程主机进行管理。
语法:telnet (选项) (主机)
3. curl 命令是一个利用URL规则在命令行下工作的文件传输工具。
4. netstat命令用来打印Linux中网络系统的状态信息,可让你得知整个Linux系统的网络情况。
语法:netstat (选项)
实例:
列出所有端口 (包括监听和未监听的)
netstat -a
列出所有端口
netstat -at
#列出所有tcp端口
netstat -au
列出所有udp端口列出所有处于监听状态的 Sockets
netstat -l
只显示监听端口
netstat -lt
只列出所有监听 tcp 端口
netstat -lu
只列出所有监听 udp 端口
netstat -lx
只列出所有监听 UNIX 端口
文章在持续更新中。。。
参考资料:
1.http://man.linuxde.net/
2.https://billie66.github.io/TLCL/book/zh/index.html
3.http://www.imooc.com/article/1316