目录
1.Linux管理文件和目录的命令
命令 | 功能 | 命令 | 功能 |
pwd | 显示当前目录 | ls | 查看目录下的内容 |
cd | 改变所在目录 | cat | 显示文件的内容 |
grep | 在文件中查找某字符 | cp | 复制文件 |
touch | 创建文件 | mv | 移动文件 |
rm | 删除文件 | rmdir | 删除目录 |
vi | 编辑文件 |
1.1 pwd命令
该命令的英文解释为print working directory(打印工作目录)。输入pwd命令,Linux会输出当前目录。
1.2 cd命令
cd命令用来改变所在目录。
cd / 转到根目录中
cd ~ 转到/home/user用户目录下
cd /usr 转到根目录下的usr目录中-------------绝对路径
cd test 转到当前目录下的test子目录中-------相对路径
1.3 ls命令
ls命令用来查看目录的内容。
选项 | 含义 |
-a | 列举目录中的全部文件,包括隐藏文件 |
-l | 列举目录中的细节,包括权限、所有者、组群、大小、创建日期、文件是否是链接等 |
-f | 列举的文件显示文件类型 |
-r | 逆向,从后向前地列举目录中内容 |
-R | 递归,该选项递归地列举当前目录下所有子目录内的内容 |
-s | 大小,按文件大小排序 |
-h | 以人类可读的方式显示文件的大小,如用K、M、G作单位 |
ls -l examples.doc | 列举文件examples.doc的所有信息 |
1.4 cat命令
cat命令可以用来合并文件,也可以用来在屏幕上显示整个文件的内容。
cat snow.txt 该命令显示文件snow.txt的内容,ctrl+D退出cat。
1.5 grep命令
grep命令的最大功能是在一堆文件中查找一个特定的字符串。
普通查找
grep money test.txt
以上命令在test.txt中查找money这个字符串,grep查找是区分大小写的。
多条件"和"查找
grep k1 | grep k2
查找test1文件中,既包含test1又包含test2的行信息
多条件"或"查找
grep -E ’k1|k2‘
查找6397.conf文件中以 bind开头的或包含字符串 protected-mode的行信息
多文件查找
查多个文件中包含test字符串的行信息
1.6 touch命令
touch命令用来创建新文件,他可以创建一个空白的文件,可以在其中添加文本和数据。
touch newfile 该命令创建一个名为newfile的空白文件。
1.7 cp命令
cp命令用来拷贝文件,要复制文件,输入命令:
cp <source filename> <targetfilename>
cp t.txt Document/t 该命令将把文件t.txt复制到Document目录下,并命名为t。
选项 | 含义 |
-i | 互动:如果文件将覆盖目标中的文件,他会提示确认 |
-r | 递归:这个选项会复制整个目录树、子目录以及其他 |
-v | 详细:显示文件的复制进度 |
1.8 mv命令
mv命令用来移动文件。
选项 | 说明 |
-i | 互动:如果选择的文件会覆盖目标中的文件,他会提示确认 |
-f | 强制:它会超越互动模式,不提示地移动文件,属于很危险的选项 |
-v | 详细:显示文件的移动进度 |
mv t.txt Document 把文件t.txt 移动到目录Document中。
1.9 rm命令
rm命令用来删除文件。
选项 | 说明 |
-i | 互动:提示确认删除 |
-f | 强制:代替互动模式,不提示确认删除 |
-v | 详细:显示文件的删除进度 |
-r | 递归:将删除某个目录以及其中所有的文件和子目录 |
rm t.txt 该命令删除文件t.txt
1.10 rmdir命令
rmdir命令用来删除目录。
1.11 vi 编辑文件(补充)
vi命令是UNIX操作系统和类UNIX操作系统中最通用的全屏幕纯文本编辑器。Linux中的vi编辑器叫vim,它是vi的增强版(vi Improved),与vi编辑器完全兼容,而且实现了很多增强功能。
进入vi的命令:
vi filename :打开或新建文件,并将光标置于第一行首
vi n filename :打开文件,并将光标置于第n行首
vi filename :打开文件,并将光标置于一行首
vi /pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处
vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename
vi filename....filename :打开多个文件,依次进行编辑
屏幕翻滚类命令:
Ctrl u:向文件首翻半屏
Ctrl d:向文件尾翻半屏
Ctrl f:向文件尾翻一屏
Ctrl+b;向文件首翻一屏
nz:将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部.
插入文本类命令
i :在光标前
I :在当前行首
a:光标后
A:在当前行尾
o:在当前行之下新开一行
O:在当前行之上新开一行
r:替换当前字符
R:替换当前字符及其后的字符,直至按ESC键
s:从当前光标位置处开始,以输入的文本替代指定数目的字符
保存命令
按ESC键 跳到命令模式,然后:
:w 保存文件但不退出vi
:w file 将修改另外保存到file中,不退出vi
:w! 强制保存,不推出vi
:wq 保存文件并退出vi
:wq! 强制保存文件,并退出vi
:q 不保存文件,退出vi
:q! 不保存文件,强制退出vi
:e! 放弃所有修改,从上次保存文件开始再编辑
之后,回车,ok!
2.有关磁盘空间的命令
命令 | 功能 |
mount | 挂载文件系统 |
umount | 卸载已挂载上的文件系统 |
df | 检查各个硬盘分区和已挂上来的文件系统的磁盘空间 |
du | 显示文件目录和大小 |
fsck | 主要是检查和修复Linux文件系统 |
2.1 mount命令
mount命令的功能是挂载文件系统,可以挂载硬盘、光盘、软盘,也可以挂载NFS网络文件系统。这个命令的标准用法如下:
mount –t 设备类型存放目录
mount IP地址:/所提供的目录存放目录
选项 | 说明 |
(无) | 不加任何参数,直接输入命令可以显示已挂载的文件系统和目录 |
-a | 挂上/etc/fstab下的全部文件系统 |
-t | 制定所挂上来的文件系统的名称,所有系统支持的文件系统,这个信息可以在/proc/filesystems这个文件里看到 |
-n | 挂上文件系统,但是不把文件系统的数据写入/etc/mtlab这个文件 |
-w | 将文件系统设为可读写 |
-r | 挂上来的文件系统设为只读 |
在目录/mnt下,挂上iso9660文件系统。输入命令:
mount –t iso9660 /dev/hdb /cdrom
2.2 umount命令
umount命令的功能是卸载已挂上的文件系统,在关闭系统前应该把所有挂载上的文件系统卸载。这个命令和mount命令是相对的。用法:
umount 已挂上的目录或设备
卸载已挂上的/cdrom目录,输入命令:
umount /cdrom
卸载已挂上的某个分区,输入命令:
umount /dev/hdb1
2.3 df命令
df命令用来检查硬盘分区和已挂在的文件系统的磁盘空间,也就是说,检查硬盘的使用量。标准用法如下:
df [-选项]
选项 | 说明 |
-a | 把全部的文件系统和各分区的硬盘使用情形列出来,包括0区块的,例如/proc这个文件系统 |
-i | 列出I-nodes的使用量 |
-k | 把各分区的大小和挂上来的文件分区的大小用k表示 |
-t | 列出某一文件系统的所有分区磁盘空间使用量 |
-x | 列出不是某一文件系统的所有分区磁盘空间使用量,和-t选项相反 |
-T | 列出每个分区所属文件系统的名称 |
例如,要列出全部文件系统和各分区的磁盘使用情况,输入命令:df –a
2.4 du命令
du命令的功能是用于显示文件目录或大小。标准用法:
du [-选项]
选项 | 说明 |
-a | 显示全部目录及其次目录下的每个文件所占的磁盘空间 |
-b | 显示目录和文件的大小,以B为单位 |
-c | 最后再加上一个总计 |
-h | 以KB、MB、GB为单位,提高信息可读性 |
-s | 只列出各文件大小的总和 |
-x | 只计算属于同一文件系统的文件 |
2.5 fsck命令
fsck命令的功能是检查和修复Linux文件系统,这个命令最好在没有人或是没有分区挂上来时使用,其实每次开机系统都会做一次检查,看是否有坏轨或数据流失的现象。用法:
fsck (-选项) 分区名称
选项 | 说明 |
-a | 自动修复文件系统,不询问任何问题,比较危险 |
-A | 依照/etc/fstab配置文件的内容,检查该文件内所列全部文件系统。若没有附加参数"-P”,则会先检查/目录的文件系统,而不会同时检查所有文件系统 |
-R | 采取互动方式,在修复时询问问题,让用户确认并决定处理方式 |
-S | 依次检查作业而不是同时执行。当依次指定多个文件系统且采用互动的方式进行检查时,请使用此参数以便顺序执行,否则fsck可能会同时询问数个问题,让人不知所措 |
-V | 显示命令执行的过程 |
-T | 指定要检查的文件系统的类型 |
-N | 不是真正执行指令,仅列出实际执行时会进行的动作 |
3.文件备份和压缩命令
在Linux中,常用的文件压缩工具有gzip、bzip2、zip。bzip2是最理想的压缩工具,它提供了最大限度的压缩。zip兼容性好,Windows也支持。
命令 | 功能 |
bzip2/bunzip2 | 扩展名为bz2的压缩/解压缩工具 |
gzip/gunzip | 扩展名为gz的压缩/解压缩工具 |
zip/unzip | 扩展名为zip的压缩/解压缩工具 |
tar | 创建备份和归档 |
3.1 bzip2命令
要使用bzip2来压缩文件,在shell提示下输入命令:
bzip2 filename
文件即会被压缩,并被保存为filename.bz2。
要解压缩文件,输入命令:
bunzip2 filename.bz2
filename.bz2会被删除,而以filename代替。
bzip2 filename.bz2 file1 file2 file3/usr/work/school
上面的命令把file1、file2、file3以及/usr/work/school目录中的内容压缩起来放入filename.bz2。
3.2 gzip命令
要使用gzip来压缩文件,输入命令:
gzip filename
文件即会被压缩,并被保存为filename.gz。
要解压缩文件,输入命令:
gunzip filename.gz
filename.gz会被删除,而以filename代替。
gzip -r filename.gz file1 file2 file3/usr/work/school
上面的命令把file1、file2、file3以及/usr/work/school目录中的内容压缩起来放入filename.gz。
3.3 zip命令
zip命令的使用方法同gzip。
3.4 tar命令
tar命令最早是用来做磁带备份的,但是由于硬盘容量越来越大,因此现在主要用这个命令来备份所有的文件。tar这个命令把大量的文件和目录打包成一个文件。
选项 | 说明 |
-c | 创建一个新归档 |
-f | 当与-c选项一起使用时,创建的tar文件使用该选项指定的文件名;当与-x选项一起使用时,则解除该选项指定的归档 |
-t | 显示包括在tar文件中的文件列表 |
-v | 显示文件的归档进度 |
-x | 从归档中抽取文件 |
-z | 使用gzip压缩tar文件 |
-j | 使用bzip2压缩tar文件 |
要创建一个tar文件,输入命令:
tar –cvf filename.tar directory/file/home/mine
上面的命令将directory/file、/home/mine放入归档文件中。
要列出tar文件的内容,输入命令:
tar –tvf filename.tar
要抽取tar文件的命令,输入命令:
tar –xvf filename.tar
这个命令不会删除tar文件,但会把解除归档的内容复制到当前工作目录下,并保留归档文件所使用的任何目录结构。
请记住,tar默认不压缩文件。要创建一个使用tar和bzip2来归档压缩的文件,使用-j选项:
tar –cjvf filename.tbz file
如果使用bunzip2命令解压filename.tbz文件,则filename.tbz会被删除,以filename.tar代替。
要扩展并解除归档bzip tar文件,输入命令:
tar –xjvf filename.tbz
要创建一个用tar和gzip归档并压缩的文件,使用-z选项:
tar –czvf filename.tgz file
如果使用gunzip命令解压filename.tgz文件,则filename.tgz会被删除,以filename.tar代替。
4.关机和查看系统信息的命令
命令 | 说明 |
shutdown | 正常关机 |
reboot | 重启计算机 |
ps | 查看目前程序执行的情况 |
top | 查看目前程序执行的情景和内存使用的情况 |
kill | 终止一个进程 |
date | 更改或查看目前日期 |
cal | 显示月历及年历 |
4.1 shutdown命令
要使用这个命令必须保证是根用户,否则使用su命令改变为根用户。命令格式如下:
shutdown –(选项)
选项 | 功能 |
-k | 不是真正的关机,只是发出警告命令 |
-r | 关机后重启(这个用的最多) |
-t | 在规定的时间内关机 |
加入要在2min内关机,输入命令:
shutdown –t 2
如果是关机后重启,输入命令:
shutdown –r
4.2 reboot命令
这个命令也是一个关机命令,只有输入,不加任何参数,系统会以最快的速度关机,且不将内存或缓冲区里的东西写回硬盘。
选项 | 功能 |
-d | 不把记录写到/var/log/wtmp档案里(-n这个参数包含了-d) |
-f | 强迫重开机,不呼叫shutdown这个指令 |
-n | 在重开机前不做将记忆体资料写回硬盘 |
-w | 并不会真的重开机,只是把记录写到/var/log/wtmp档案里 |
4.3 ps命令
ps命令用来查看在计算机系统中有哪些程序正在执行,及其执行的情况。这是一个相当强大的命令,可以用它来找出所有的process id和名称。另外,ps命令也可以用来列出所有程序占用内存的情况。用法如下:
ps –(选项)
选项 | 功能 |
-l | 用长格式列出 |
-u | 列出使用者的名称和使用时间 |
-m | 列出内存分布的情况 |
-r | 只列出正在执行的前台程序,不列出其他信息 |
-x | 列出所有程序,包括那些没有终端机的程序 |
4.4 top命令
top命令可以查看目前程序的执行情景和内存使用。它和ps类似,不过,它会几秒钟更新一次系统状态,方便追踪。要离开这个程序,按Ctrl+C键就可以了。
4.5 kill命令
kill命令用来终止一个正在执行中的进程。如果一个程序执行过程中失败了,可以把这个程序终止,避免留在内存中占用系统资源。不过,它的实际意义是送一个信号给这个正在执行的程序,叫它自杀。
可以送很多信号给这些程序,也可以让他们受到信号后做很多事情。标准用法:
kill –(选项) pid
在执行kill命令前。可以先用ps命令查一下某宕掉程序的pid,然后使用kill除去某个程序。例如,终止pid为90的程序:
kill 90
选项 | 功能 |
-l | 列出所有可用的信号名称 |
-p | 印出pid并不发送信号 |
-signal | 其中可用的讯号有 HUP (1), KILL (9), TERM (15), 分别代表著重跑, 砍掉, 结束 |
将 pid 为 323 的行程砍掉 (kill) :
kill -9 323
将 pid 为 456 的行程重跑 (restart) :
kill -HUP 456
4.6 date命令
date命令用来显示、设定和修改现在的时间和日期。标准用法:
date –(选项) 显示时间格式(以+号开头,后加格式)
date 设定时间格式
选项 | 功能 |
-u | 使用格林尼治时间 |
-r | 最后一次修改文件的时间 |
-s | 设置时间 |
常用的几种时间格式如下表所示:
格式 | 说明 |
%a | 星期几的简称,例如一、二、三 |
%A | 星期几的全名,例如星期一、星期二 |
%D | 日期(mm/dd/yy格式) |
%T | 显示时间格式,24小时制(hh:mm:ss) |
%x | 显示日期的格式(mm/dd/yy) |
%y | 年的最后两个数字 |
%Y | 年(如2007、2008) |
%r | 时间(hh:mm:ss 上午或下午) |
%p | 显示上午或下午 |
如果输入命令:
date “+%x,%r”
系统返回如下信息:
2010年3月26日,下午 18时06分49秒
4.7 cal命令
cal命令有两种功能:显示月历以及年历。
直接输入cal命令则系统会显示目前月份的月历。
若要显示一整年的年历,可以在cal命令后加4位数的公元年份。例如要显示2008年的年历,必须输入:
cal 2008
若输入 cal 08 ,则最显示公元8年的年历。
若只需要查看某一年份中某一月份的月历,可以输入:cal 月份公元年份。例如输入:"cal 12 2004”。
源码等资料获取方法
各位想获取源码等教程资料的朋友请点赞 + 评论 + 收藏,三连!
三连之后我会在评论区挨个私信发给你们~