Linux基础命令总结

Posted Linux就该这么学

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux基础命令总结相关的知识,希望对你有一定的参考价值。

纯手工打造每一篇开源资讯与技术干货,数十万程序员和Linuxer已经关注。

现在的主流Linux发行版中,默认使用Bash解释器作为Shell终端,而Bash作为主流Linux系统的Shell解释器具有相当大的优势。
1.可以使用方向键的上下键调取过去执行的命令;
2.可以使用Tab补全功能,即手动打出前几个字母,若以此字符串进行查询只有一个命令或文件匹配,则补全此命令或文件名;若以此字符串查询有多个命令或文件,则显示查询到的命令列表或文件列表;
3.可以使用glob通配符功能:

*:任意个任意字符;
?:单个任意字符;
[list]:匹配list中的任意字符;
[!list]:不匹配list中的任意字符;
[c1-c2]:匹配c1-c2中的任意单个字符,如[0-9],[a-z];
{string1,string2,...}:匹配{}中的任意一个字符串;
{c1..c2}:匹配c1-c2的全部字符,如{1..10};

4.可以自定义环境变量以满足需求;
5.强大的批处理脚本;

帮助命令

作为自学者,首先需要学会的就是能看懂每个命令的帮助文档,那么第一个需要掌握的Linux命令就应该是man。

man命令

Linux下的帮助指令,通过man命令可以查看Linux中的命令帮助,配置文件帮助和编程帮助等信息。
语法:
man [options...]
常用选项:
-a:在所有的man手册中搜索;
-f: 等价于whatis,显示给定关键字的简短信息;
-M:指定man手册搜索的路径;
-#:指定从#号man手册中进行搜索;
例如:

man ls
man 8 ifconfig
man -f sleep

区段 说明

1

一般命令

2

系统调用

3

库函数,包括C标准库

4

特殊文件和驱动程序

5

文件格式和约定

6

游戏和屏保

7

杂项

8

系统管理命令和进程

系统相关命令

echo命令

在终端上显示字符串或变量提取出来的值。
语法:
echo [options...] [$variable|string]
例如:

echo "Hello Linux"
echo $PATH

date命令

显示或设置Linux系统时间与日期。
语法:
date [options...] [+dateformat]
常用选项:
-d<字符串>:显示字符串所指的时间与日期;
-s<字符串>:根据字符串设置系统时间与日期;
--help:在线帮助;
常用日期格式:
%H:小时,24小时制(00-23)
%I:小时,12小时制(01-12)
%M:分钟,(00-59)
%S:秒钟,(00-59)
%p:显示am或pm
%Y:完整年份
%y:两位年份
%m:月份
%d:一个月的第几天(00-31)
%Z:显示时区
%B:完整月份(January-December)
%b:缩写月份(Jan-Dec)
%A:完整星期几(Sunday- Saturday)
%a:缩写星期几(Sun-Sat)
%j:一年的第几天(001-365)
%W:一年的第几个星期(00-53)
%w:一个星期的第几天(0代表星期天)
%X:显示的时间格式相当于%H:%M:%S
%F:相当于%Y:%m:%d
%T:24小时制hh:mm:ss
例如:

date -d "1 day ago" +"%Y:%m:%d"(显示一天前的日期)
date -d "2017-06-18" +"%Y/%m/%d %H:%M:%S"(日期格式转换,结果为:2017/06/18 00:00:00)
date -s "2020-01-01 00:00:00" (设置系统全部时间)

ps命令

查看当前系统的进程状态。
常用选项:
-a:显示所有进程;
-u:用户以及其他信息;
-x:显示所有程序,不以终端机区分;

Linux进程常见的状态

R:运行,正在运行的进程;
S:中断,可中断的睡眠进程;
U:不可中断,不可中断的睡眠进程;
Z:僵死,进程已终止,但父进程未询问其状态情况;
T:停止,当进程收到SIGSTOP,SIGTIN,SIGTSTP,SIGTOU信号时,停止运行;

kill命令

根据指定进程号来删除执行中的程序或工作。
常用选项:
-l:列出所有的kill可发送的信号
-s:指定要发送的信号
例如:
使用ps查询相应的进程,并使用kill结束进程

ps | grep vim
kill 3268

killall命令

根据指定进程名杀死进程,此命令可杀死跟指定进程相关的所有进程。
常用选项:
-i:交互式杀死进程,对每个要杀死的进程进行询问;
-s:指定要发送的信号
例如:

killall vim

poweroff命令

用于系统关机。

reboot命令

用于系统重启。

目录和文件相关命令

pwd命令

以绝对路径的形式显示用户当前的工作目录。

mkdir命令

用来创建目录。如果在目录名的前面没有加任何路径名,则在当前目录下创建由dirname指定的目录;如果给出了一个已经存在的路径,将会在该目录下创建一个指定的目录。在创建目录时,应保证新建的目录与它所在目录下的文件没有重名。
常用选项:
-p:递归创建目录
例如:

mkdir -p a/b/c

ls命令

用来显示目标列表。Linux中最常用的命令之一。
语法:
ls [options...] file
常用选项:
-a:显示所有文件,包括隐藏文件;
-l:以长格式显示目录下的文件列表,输出的信息从左到右代表的依次为:文件类型,权限模式,硬连接数,属主,属组,文件大小,文件最后修改时间,文件名;
例如:

ls -la root(以长格式显示root目录下所有文件列表)

cd命令

切换用户的工作目录至指定目录。cd -为Linux中最常用的命令之一。
语法:
cd [options...] dir
常见选项:
-:当前工作目录将被切换到环境变量"OLDPWD"所表示的工作目录中;
例如:

cd(进入当前用户的家目录)
cd -(进入上一个工作目录)
cd !$(将上一个命令的参数作为cd的参数使用)

mv命令

用来移动文件或对文件进行重命名
语法:
mv [options...] source target
例如:

mv /etc/fstab /etc/fstab.bak(将etc目录下的fstab文件进行重命名为fstab.bak)
mv /etc/fstab /tmp(将etc目录下的fstab文件移动到tmp目录下)

cp命令

将指定文件复制到指定目录中。(若源文件有多个文件,则目标文件必须是目录)
常用选项:
-r/R:递归出来,源文件为目录时使用;
-f:强制复制;
-v:显示详细信息;
例如:

cp /etc/fstab /tmp(将fstab文件复制到tmp目录下)
cp /etc/* /tmp/etc.bak/(将etc目录下所有文件复制到tmp的etc.bak目录下)

tree命令

以树状形式显示目录结构

touch命令

用于创建新文件或设置文件的时间戳。
常用选项:
-a:仅修改文件的“访问时间”(atime)
-m:仅修改文件的“修改时间”(mtime)

tar命令

用于文件的打包和压缩。
常用选项:
-c:创建新的备份文件;
-x:从备份文件中还原文件;
-f:指定备份文件;
-v:显示文件打包或还原详细过程;
-z:使用gzip程序对文件进行压缩或解压;
-j:使用bzip2程序对文件进行压缩或解压;
-t:列出备份文件中的文件列表;
例如:

tar -cvf log.tar log.log(仅打包,不压缩)
tar -zcvf log.tar.gz log.log(打包后使用gzip工具进行压缩)
tar -jcvf log.tar.bz log.log (打包后使用bzip2工具进行压缩)
tar -zxvf log.tar.gz (解压缩)
tar -ztvf log.tar.gz(查询log.tar.gz中所包含的所有文件列表)

其他压缩工具:
gzip,bzip2,zip
对应的解压缩工具:
gunzip,bunzip2,unzip

grep命令

global search regular and print out the line
强大的文本搜索工具,可以使用标准正则表达式,并把匹配的行打印出来。
语法:
grep [options] match_pattern file
常用选项:
-n:不仅显示所匹配的行,而且显示所匹配的行号;
-v:反转查找;
-i:忽略字符大小写;
-o:只显示匹配到的字符;
--color=auto:查询到的字符颜色高亮显示;
-e:使用扩展正则表达式进行搜索;
例如:

grep /sbin/nologin /etc/passwd(显示默认bin为/sbin/nologin的所有用户信息)
grep -v /sbin/nologin /etc/paswd(显示默认bin不是/sbin/nologin的所有用户信息)

find命令

用于在指定目录下查找文件。
-name:匹配文件名;
-perm:匹配权限;
-user:匹配属主;
-group:匹配属组;
-atime [-n|+n]:匹配访问时间,“-”代表n天以内,“+”代表n天以前;
-mtime [-n|+n]:匹配修改时间,“-”代表n天以内,“+”代表n天以前;
--type :匹配文件类型;
-exec {} \;:若find命令执行返回true,这执行该命令,{}代表find命令搜索到的所有文件,结尾\;为固定形式;
例如:

find /home -name "*.txt"(搜索home目录下所有的txt文件)
find . -type f -atime -7(搜索7天内被访问过的所有文件)
find . -user root -type f(搜索属主为root的所有文件)
find . -type f -mtime +30 -name "*.log" -exec cp {} old \;(将30天前的.log文件移动到old目录中)

原文来自:  http://www.jianshu.com/p/265a1bad72e7


让您学习到的每一节课都有所收获

《Linux就该这么学》是由资深运维专家刘遄及全国多名红帽架构师(RHCA)基于最新RHEL7系统共同编写的高质量Linux技术自学教程,极其适合用于Linux技术入门教程或讲课辅助教材。

☀ 刘遄老师QQ:5604241  微信:gnu_chuan

☀ 学员助教QQ:5604674

 Linux技术交流A群(满):560843

☀ Linux技术交流B群:340829

☀ Linux技术交流C群:463590

☀ Linux技术交流D群:915246

☀ Linux技术交流E群:1663106

☀ Linux技术交流F群:1653851

☀ Linux技术交流G群:2632018(新群,火热加群中……

☀ 官方站点:www.linuxprobe.com

☀ 电脑在线阅读效果更佳:

http://www.linuxprobe.com/chapter-00.html

按住图片3秒,即可自动关注。

点击左下角查看更多热门技术

以上是关于Linux基础命令总结的主要内容,如果未能解决你的问题,请参考以下文章

Linux 基础命令总结案列

20145306《信息安全系统设计基础》课程总结

总结的linux 基础命令

linux 基础知识总结-----基本命令

Linux 基础命令总结

Linux基础:dirname命令总结