本片文章只讲述Linux的一些基本指令,让你简单上手Liunx!
目录
🍑[ls : 显示当前目录下的文件列表](#ls : 显示当前目录下的文件列表)
[-a :列出目录下的所有文件,包括以 . 开头的隐含文件编辑](#-a :列出目录下的所有文件,包括以 . 开头的隐含文件编辑)
[-l :显示文件的详细信息编辑](#-l :显示文件的详细信息编辑)
🍑[pwd :显示用户当前所在目录](#pwd :显示用户当前所在目录)
🍑[whoami :我的身份](#whoami :我的身份)
🍑[cd :进入指定目录中](#cd :进入指定目录中)
[cd .. : 返回上级目录](#cd .. : 返回上级目录)
[cd /home/wupeidong/test : 绝对路径](#cd /home/wupeidong/test : 绝对路径)
[cd ../file : 相对路径](#cd ../file : 相对路径)
[cd ~:进入用户家目](#cd ~:进入用户家目)
[cd -:返回最近访问目录](#cd -:返回最近访问目录)
🍑[touch :创建文件](#touch :创建文件)
🍑[mkdir :创建目录](#mkdir :创建目录)
[-p :递归创建多个目录](#-p :递归创建多个目录)
🍑[rmdir && rm :删除](#rmdir && rm :删除)
[rmdir :删除空目录(ps:只能删除空目录!)](#rmdir :删除空目录(ps:只能删除空目录!))
[-p :-p 当子目录被删除后如果父目录也变成空目录的话,就连带父目录一起删除。](#-p :-p 当子目录被删除后如果父目录也变成空目录的话,就连带父目录一起删除。)
[-r :递归删除(即该目录下的文件及目录等将一并删除](#-r :递归删除(即该目录下的文件及目录等将一并删除)
[-f :强制删除](#-f :强制删除)
🍑[tree :以树状结构显示Linux的目录结构](#tree :以树状结构显示Linux的目录结构)
[tab :显示以你所出入的字母为开头的所有指令](#tab :显示以你所出入的字母为开头的所有指令)
[疯狂刷屏 ------ ctrl + c ------终止程序运行](#疯狂刷屏 —— ctrl + c ——终止程序运行)
[ctrl + d 退出服务器](#ctrl + d 退出服务器)
[ctrl + r 在历史命令中搜索](#ctrl + r 在历史命令中搜索)
[history 显示所有历史命令](#history 显示所有历史命令)
🍑[nano :打开文件进行编写](#nano :打开文件进行编写)
🍑[stat :查看文件的所有属性](#stat :查看文件的所有属性)
🍑[echo :写入文本](#echo :写入文本)
[>>(追加重定向 :向目标文件新增内容)](#>>(追加重定向 :向目标文件新增内容))
[< (输入重定向 :显示出文件的内容)](#< (输入重定向 :显示出文件的内容))
🍑[man :查找指令](#man :查找指令)
🍑[cp :复制文件或目录](#cp :复制文件或目录)
[语法:cp [选项] 源文件或目录 目标文件或目录](#语法:cp [选项] 源文件或目录 目标文件或目录)
[-r :递归复制,将指定目录下的文件与子目录一并处理。](#-r :递归复制,将指定目录下的文件与子目录一并处理。)
[-f :强制复制](#-f :强制复制)
🍑[mv :移动文件或目录](#mv :移动文件或目录)
[语法:mv [选项] 源文件或目录 目标文件或目录](#语法:mv [选项] 源文件或目录 目标文件或目录)
[-f :强制移动](#-f :强制移动)
🍑[cat :查看文件内容](#cat :查看文件内容)
[-n :对输出的所有行编号](#-n :对输出的所有行编号)
[-s :不输出多行空行](#-s :不输出多行空行)
[-b :对非空输出行编号](#-b :对非空输出行编号)
🍑[wc-l 文件 :显示该文件的行数](#wc-l 文件 :显示该文件的行数)
🍑[more :打印文件内容,只能逐行翻阅,不能上翻,也可查询](#more :打印文件内容,只能逐行翻阅,不能上翻,也可查询)
[/字符串 :搜索"字符串"](#/字符串 :搜索“字符串”)
[q :退出](#q :退出)
🍑[less :less与more类似,但使用less可以随意浏览文件](#less :less与more类似,但使用less可以随意浏览文件)
[-i 忽略搜索时的大小写](#-i 忽略搜索时的大小写)
[-N 显示每行的行号](#-N 显示每行的行号)
[n:重复前一个搜索(与 / 或 ? 有关)](#n:重复前一个搜索(与 / 或 ? 有关))
[N:反向重复前一个搜索(与 / 或 ? 有关)](#N:反向重复前一个搜索(与 / 或 ? 有关))
🍑[head :显示文件的前几行内容,默认显示前10行](#head :显示文件的前几行内容,默认显示前10行)
🍑[tail :显示文件的后几行内容,默认显示后10行](#tail :显示文件的后几行内容,默认显示后10行)
🍑[命令行管道 :( | )](#命令行管道 :( | ))
🍑[date :显示时间](#date :显示时间)
[时间戳 :](#时间戳 :)
[时间->时间戳:date +%s](#时间->时间戳:date +%s)
[时间戳->时间:date -d@1508749502](#时间戳->时间:date -d@1508749502)
🍑[cal :显示日历](#cal :显示日历)
[-3 显示系统前一个月,当前月,下一个月的月历](#-3 显示系统前一个月,当前月,下一个月的月历)
[-j 显示在当年中的第几天(一年日期按天算,从1月1号算起,默认显示当前月在一年中的天数)](#-j 显示在当年中的第几天(一年日期按天算,从1月1号算起,默认显示当前月在一年中的天数))
[-y 显示当前年份的日历](#-y 显示当前年份的日历)
🍑[find :查找文件或目录](#find :查找文件或目录)
[-name :查找指定文件或目录](#-name :查找指定文件或目录)
🍑[which :搜索指令所在位置](#which :搜索指令所在位置)
🍑[whereis :在系统默认路径下搜索指定的文件、程序等](#whereis :在系统默认路径下搜索指定的文件、程序等)
🍑[grep :在文件中搜索字符串,将找到的行打印出来](#grep :在文件中搜索字符串,将找到的行打印出来)
[grep [选项] 搜寻字符串 文件](#grep [选项] 搜寻字符串 文件)
[-i :忽略大小写的不同,所以大小写视为相同](#-i :忽略大小写的不同,所以大小写视为相同)
[-n :顺便输出行号](#-n :顺便输出行号)
[-v :反向选择,亦即显示出没有 '搜寻字符串' 内容的那一行](#-v :反向选择,亦即显示出没有 '搜寻字符串' 内容的那一行)
🍑[sort :按行排序](#sort :按行排序)
[-r 逆排序](#-r 逆排序)
[uniq :去重](#uniq :去重)
🍑[zip :压缩文件或目录](#zip :压缩文件或目录)
[-r :递归压缩](#-r :递归压缩)
🍑[unzip :解压缩](#unzip :解压缩)
[unzip text.zip -d 目录 可以解压到指定目录中](#unzip text.zip -d 目录 可以解压到指定目录中)
🍑[tar :打包/解包](#tar :打包/解包)
🍑[bc :计算器](#bc :计算器)
🍑[uname :用来获取电脑和操作系统的相关信息](#uname :用来获取电脑和操作系统的相关信息)
[-a :查看全部信息](#-a :查看全部信息)
[-r :仅查看体系结构](#-r :仅查看体系结构)
🍑[shutdown :关机](#shutdown :关机)
[-h :将系统的服务器停掉后,立即关机](#-h :将系统的服务器停掉后,立即关机)
[-r :在将系统的服务器停掉后就重新启动](#-r :在将系统的服务器停掉后就重新启动)
[-t sec : -t后面加秒数,即几秒之后关机](#-t sec : -t后面加秒数,即几秒之后关机)
🍑[reboot :重启服务器,但是需要超级用户权限](#reboot :重启服务器,但是需要超级用户权限)
🍑[alias :将命令重命名](#alias :将命令重命名)
🍑[top :显示任务管理器](#top :显示任务管理器)
🍑[shell :](#shell :)
ls : 显示当前目录下的文件列表
-a :列出目录下的所有文件,包括以 . 开头的隐含文件
其中用红框标记的均为隐藏文件,需要补充的是 . 为当前目录, .. 为上级目录,也均为隐藏文件。
-l :显示文件的详细信息
也可以直接缩写成 ll
第1列是文件类型加权限,在我后面讲权限的文章中会详细讲解。
第2列是硬链接的引用次数。
第3列是文件的拥有者账户。只能有一个。
第4列是文件的拥有者账户所在组名。只能有一个。
第5列是文件所占有的字节数。
第6列是文件最后修改时间。
第7列是文件名。
pwd :显示用户当前所在目录
我当前所在路径就是home目录下的wupeidong目录下,该命令是十分常用的
whoami :我的身份
这就是我使用这台服务器的身份。
cd :进入指定目录中
Linux 系统中,磁盘上的文件和目录被组成一棵目录树,每个节点都是目录或文件。
下面有几个常见的命令:
cd .. : 返回上级目录
如上,我本来在file目录中,cd .. 之后就返回到了上一级wupeidong目录中了。
cd /home/wupeidong/test : 绝对路径
通过绝对路径直接从家目录进入到test目录中。
cd ../file : 相对路径
通过相对路径,从test目录直接进入到file目录中。
cd ~:进入用户家目
原本在file1目录中,通过cd ~ 命令直接回到家目录中。
cd -:返回最近访问目录
原本在file1目录中,通过直接路径进入到test目录中,cd - 就可以直接返回上一次访问的目录中。
touch :创建文件
touch后面直接加文件名称
mkdir :创建目录
mkdir后面直接加目录名
-p :递归创建多个目录
创建了一系列目录。
rmdir && rm :删除
rmdir :删除空目录(ps:只能删除空目录!)
-p :-p 当子目录被删除后如果父目录也变成空目录的话,就连带父目录一起删除。
rm:可以删除文件以及目录
-r :递归删除(即该目录下的文件及目录等将一并删除
将game目录以及game目录下的game1目录一并删除了。
-f :强制删除
有些文件删除时系统会报出警告,不让删除,加上-f的参数指令后就不报警告且直接删除了。
tree :以树状结构显示Linux的目录结构
若你不能使用tree命令,应该是没有安装该命令,使用 yum -y install tree 这段代码即可下载使用tree命令。
热键:一些实用的命令
tab :显示以你所出入的字母为开头的所有指令
如上图所示,先输入一个t,按tab键就出现了所有以t开头的命令,按一下tab没反应的话就按两下,搜索完一次之后还可以继续输入,然后按tab键,缩小搜索范围。
疯狂刷屏 ------ ctrl + c ------终止程序运行
ctrl + c 就是终止程序运行的,比如我用tab没搜到命令,想退出,就用ctrl+c终止,就退出来了。
ctrl + d 退出服务器
退出服务器,需要重新登录服务器才能使用。
ctrl + r 在历史命令中搜索
history 显示所有历史命令
直接显示你输入过的所有命令。
nano :打开文件进行编写
在这个页面进行编写,编写完成后按ctrl+x
再按y,然后回车,就退出编写并保存了。
stat :查看文件的所有属性
echo :写入文本
echo "a b c" 就直接在显示器上输出a b c
>(输出重定向(覆盖式写入)):
将本应显示在显示器上的文本,写入到其他文件中
echo "a b c" > text.txt
将"a b c"写入到text.txt文件中,若文件不存在则自动创建
> text.txt 可以清除文件内容
(cat命令是查看的作用,后面会讲)由此可以看出 > test.txt 可以清除文件中的内容。
>>(追加重定向 :向目标文件新增内容)
文件中原来的文本会保留,只是添加一些新内容。
可以看出原本的a b c保留了,在后面新加了abcdefg
< (输入重定向 :显示出文件的内容)
如:cat < text.txt 就会显示该文件中的内容
man :查找指令
Linux 的命令有很多参数,我们不可能全记住,我们可以通过查看联机手册获取帮助。访问 Linux 手册页的命令是man。
cp :复制文件或目录
语法:cp [选项] 源文件或目录 目标文件或目录
-r :递归复制,将指定目录下的文件与子目录一并处理。
将test目录以及其中文件都复制到game1目录中。
-f :强制复制
mv :移动文件或目录
语法:mv [选项] 源文件或目录 目标文件或目录
mv命令自带递归。
-f :强制移动
文件或目录重命名:
mv name.txt newname.txt
cat :查看文件内容
-n :对输出的所有行编号
-s :不输出多行空行
遇到多行空行时,只留一行空行。
-b :对非空输出行编号
wc-l 文件 :显示该文件的行数
显示myfile.txt文件有12行。
more :打印文件内容,只能逐行翻阅,不能上翻,也可查询
/字符串 :搜索"字符串"
q :退出
less :less与more类似,但使用less可以随意浏览文件
more仅能向前移动,却不能向后移动,而且less在查看之前 不会加载整个文件。
-i 忽略搜索时的大小写
-N 显示每行的行号
/字符串:向下搜索"字符串"的功能
?字符串:向上搜索"字符串"的功能
n:重复前一个搜索(与 / 或 ? 有关)
N:反向重复前一个搜索(与 / 或 ? 有关)
q:quit
head :显示文件的前几行内容,默认显示前10行
-n<行数m>
显示前m行,不过前面的n可以省略。
tail :显示文件的后几行内容,默认显示后10行
-n<行数m>
显示前m行,不过前面的n可以省略。
命令行管道 :( | )
将数据传到下一个指令,
如:cat text.txt | head -20 | tail -10 ,我们就能直接得到11到20行的内容
date :显示时间
指定格式显示
date +%Y-%m-%d/%H:%M:%S (其中 '-','/',':'等符号都是可以自由编写的)
在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记,其中常用的标记列表如下
%H : 小时(00..23)
%M : 分钟(00..59)
%S : 秒(00..61)
%X : 相当于 %H:%M:%S
%d : 日 (01..31)
%m : 月份 (01..12)
%Y : 完整年份 (0000..9999)
%F : 相当于 %Y-%m-%d
时间戳 :
Unix 时间戳 是从 1970 年 1 月 1 日( UTC/GMT 的 午夜)开始所经过的秒数,不考虑闰秒。
时间->时间戳:date +%s
显示现在时间的时间戳
时间戳->时间:date -d@1508749502
显示时间戳为1508749502的时间
可改写为 date +%Y-%m-%d/%H:%M:%S -d@1508749502方便阅读
cal :显示日历
cal 命令可以用来显示公历(阳历)日历
-3 显示系统前一个月,当前月,下一个月的月历
-j 显示在当年中的第几天(一年日期按天算,从1月1号算起,默认显示当前月在一年中的天数)
-y 显示当前年份的日历
find :查找文件或目录
-name :查找指定文件或目录
find (将要搜索的路径) -name (文件)
如:find test -name test1.c 就是在当前用户的test目录下查找名为test1.c的文件
which :搜索指令所在位置
如:要搜索man命令与cd命令所在位置
whereis :在系统默认路径下搜索指定的文件、程序等
grep :在文件中搜索字符串,将找到的行打印出来
grep [选项] 搜寻字符串 文件
-i :忽略大小写的不同,所以大小写视为相同
-n :顺便输出行号
-v :反向选择,亦即显示出没有 '搜寻字符串' 内容的那一行
sort :按行排序
-r 逆排序
uniq :去重
(sort text.txt | uniq )就可以将text.txt文件去重排序
将myfile.txt排序后的信息通过管道传给uniq来进行去重处理。
zip :压缩文件或目录
-r :递归压缩
zip -r (压缩文件或目录名称) (所要压缩的文件或目录)
如:zip -r text.zip text
unzip :解压缩
unzip (所要解压的文件)
如:unzip test.zip
unzip text.zip -d 目录 可以解压到指定目录中
tar :打包/解包
(一般常用的指令为:-czf 打包压缩,-xzf 解包解压)
- -c 建立一个压缩文件的参数指令
- -x 解开一个压缩文件的参数指令
- -t 查看压缩文件中的文件
- -v 查看压缩文件时,显示更多信息
- -z 是否需要用gzip压缩
- -j 是否需要用bzip压缩
- -f 后接文件被压缩后的名称,注意:在f之后要 直接加档名,不能再添加参数指令了,所以f一般都是在参数指令最后。
- -C 解压到指定目录,与unzip指令的-d 用法一致
bc :计算器
可以很方便的计算浮点运算
uname :用来获取电脑和操作系统的相关信息
-a :查看全部信息
-a 或 --all 详细输出所有信息,依次为内核名称,主机名,内核版本号,内核版本,硬件名,处理器类型,硬件平台类型,操作系统名称
-r :仅查看体系结构
shutdown :关机
-h :将系统的服务器停掉后,立即关机
-r :在将系统的服务器停掉后就重新启动
-t sec : -t后面加秒数,即几秒之后关机
reboot :重启服务器,但是需要超级用户权限
alias :将命令重命名
如:alias myls='ls -a -l -i -n' 之后就可以直接用myls
top :显示任务管理器
shell :
shell存在的意义:
- 帮忙进行命令行传递的返回结果
- 保护操作系统
- 执行命令的时候,创建进程来进行执行