Linux常用命令总结

 
第一章:Linux简介
第一节:linux发展史
linux内核版本
linux内核官网:www.kernel.org
谁都可以下载使用。
 
linux发行版本(内核一样版本不一样)
redhat   centos  suse  ubuntu  turbolinux fedora   linux(红旗)  mandriva debian
 
第二节:开源软件简介(开放源代码)
开源软件:
nginx mysql apache
 
 
 
 
 
第二章:linux常用命令
linux可以识别命令补全和目录补全
 
第一节:命令基本格式
命令格式:命令 【选项】 【参数】
 
查询目录中内容:ls
ls 【选项】  【文件或目录】
命令英文原意:list
选项   -a   显示所有文件,包括隐藏文件
   -l    显示详细信息(long)  (ls -l 相当于ll)
   -d   查看目录属性(directory)
   -h   人性化显示文件大小 (human)
   -i    显示inode
 
第二节:文件处理命令(目录,文件,链接)
建立目录:mkdir -p  【目录名】
-p 递归创建(parents)
命令英文原意:make directories
 
切换所在目录:cd
命令英文原意:change directory
cd ~   进入当前目录的家目录
cd       进入当前目录的家目录
cd -    进入上一次目录
cd ..    进入上一级目录
cd .     进入当前目录(即不变)
 
相对路径:参照当前目录,进行查找
绝对路径:从根目录开始指定,一级一级递归查找。在任何目录下,都能进入指定位置。
 
查询所在目录位置:pwd
命令英文原意:print working directory
 
删除空目录:rmdir 
rmdir 【目录名】
命令英文原意:remove empty directories
 
删除文件或目录:rm
命令英文原意:remove
选项:
  -i    删除前逐一询问确认(prompt before every removal)
  -r    删除目录(recursive)
 -f    强制(force)
 -v  显示指令执行过程(verbose)
rm -rf /   相当于linux自杀
 
复制命令:cp
cp 【选项】【源文件或目录】【目标目录】
命令英文原意:copy
选项:
   -s   复制成为符号链接文件,即快捷方式(symbolic)
   -r   复制目录(recursive)
   -p  连带文件属性复制(preserve)
   -d   若源文件是链接文件,则复制链接属性(no-dereference)
   -a   相当于  -pdr
   -f   强制force
 
剪切或改名命令:mv
mv 【原文件或目录】【目标目录】
命令英文原意:mv
 
 
Linux常用目录作用
bin任何用户都可以执行
sbin超级用户都可以执行
根目录下的bin和sbin,usr目录下的bin和sbin,这四个目录都是用来保存系统命令的。
boot  启动命令
dev    硬件文件
etc     默认的配置文件
lib      函数库的保存位置
home 普通用户的家目录
root    超级用户的家目录
media mnt misc空目录,挂载。
tmp    临时目录
proc/sys  目录不能直接操作,保存的是内存的过载点,直接写入内存的。
var系统相关文档内容(可变文档目录)
 
可以在家目录root(管理员)或 home(普通用户),以及tmp目录下随便放内容。
 
链接命令:ln(生成链接文件)
ln  -s【源文件】【目标文件】
命令英文原意:link
选项
  -s    创建软链接
 
 
硬链接特征:
1,拥有相同的i节点和存储block块,可以看作是同一个文件
2,可通过i节点识别
3,不能跨分区
4,不能针对目录使用
 
 
软链接特征:(推荐使用)
1,类似于windows快捷方式
2,软链接拥有自己的i节点和block块,但是数据块中只保存原文件的文件名和i节点号,并没有实际的文件数据
3,lrwxrwxrwx  l软链接(软链接文件权限都为777)
4,修改任意文件,另一个都改变
5,删除原文件,软链接不能使用
 
 
第三节:文件搜索命令
文件搜索命令locate
locate 文件名
在后台数据库中按文件名搜索,搜索速度更快
/var/lib/mlocate(locate命令所搜索的后台数据库)
updatedb(更新数据库)
 
打开/etc/updatedb.conf配置文件
PRUNE_BIND_MOUNTS="yes"    //筛选规则生效
PRUNEFS                     //不搜索文件系统
PRUNENAMES=“.git  .hg   .svn“            //  不搜索文件的类型
PRUNEPATHS="/afs  /media  /net  /sfs  /tmp  /udev   /var/cache   /var/spool/cups   /var/spool/squid   /var/tmp"    //不搜索的路径
 
 
命令搜索命令whereis与which
whereis  命令名
搜索命令所在路径及帮助文档所在位置
选项:
  -b    只查找可执行文件(binaries)
  -m   只查找帮助文件(manual)
 
linux很有意思:
   whoami  //显示当前用户
   whatis  命令名  //显示命令的作用 
 
which  命令名
搜索命令的别名以及命令所在路径
(which cd或whereis cd是找不到的,因为cd是shell自带的功能)
 
文件搜索命令find
find 【搜索范围】【搜索条件】
 
find   /   -name    install.log
#避免大范围搜索,会非常耗费系统资源
#find是在系统当中搜索符合条件的文件名。如果需要匹配,使用通配符匹配,通配符是完全匹配
 
?任意一个字符
* 任意长度字符
[]任意一个中括号内的字符
 
 
find   /root   -iname  install.log
#不区分大小写
find   /root   -user    root
#按照所有者搜索
find   /root   -nouer
#查找没有所有者的文件
没有所有者的是垃圾文件(Linux的特殊条件:①内核产生的(proc/sys),②外来文件(U盘)这两种情况不要随意删除),可以删除。。
 
find    /var/log/    -mtime   +10
#查找10天前修改的文件
-10    10天内修改的文件
10      10天当天修改的文件
+10   10天前修改的文件
 
atime   文件访问时间(access)
ctime   改变文件属性(change)
mtime  修改文件内容(modify)
 
 
find   .      -size     25k
.代表当前目录
size表示文件大小
 
-25k,25k,+25k(千字节要小写)
-25M,25M,+25M(兆字节要大写)
单位一定要写,默认单位是块。用的是硬盘里的扇区的块,不是分区的块
 
find   .    -inum   262422
#查找i节点是262422的文件
 
 
互补使用
ls -i    //知道文件名找i节点
find    //知道i节点找文件名
 
 
find   /etc   -size  +20k  -a   -size   -50k
#查找/etc/目录下,大于20kb并且小于50kb的文件
-a   and    逻辑与 ,两个条件都满足
-o   or      逻辑或 ,两个调节满足一个即可
 
 
find  /etc   -size  +20k   -a  -size  -50k   -exec  ls  -lh  {}  \;标准格式
#查找/etc/目录下,大于20kb并且小于50kb的文件,并显示详细信息
#-exec/  -ok命令 {}\;   对搜索结果执行操作
exec后面的命令对前面的结果进行处理,所以并不是什么命令都可以放在这。
 
 
 
字符串搜索命令grep(包含匹配)
grep  【选项】  字符串  文件名
#在文件当中匹配符合条件的字符串
选项:
   -i   忽略大小写(ignore case)
   -v   排除指定字符串(invert-match)
 
find命令与grep命令的区别
find命令:在系统当中搜索符合条件的文件名,如果需要匹配,使用通配符进行匹配,通配符是完全匹配。
grep命令:在文件当中搜索符合条件的字符串,如果需要匹配,使用正则表达式进行匹配,正则表达式是包含匹配。
 
 
 
第四节:帮助命令
帮助命令:man 
man 命令
#获取指定命令的帮助
 
man的级别
1,查看命令的帮助
2,查看可被内核调用的函数的帮助
3,查看函数和函数库的帮助
4,查看特殊文件的帮助(主要是/dev目录下的文件)
5,查看配置文件的帮助
6,查看游戏的帮助
7,查看其它杂项的帮助
8,查看系统管理员可用命令的帮助
9,查看和内核相关文件的帮助
 
查看命令拥有哪个级别的帮助
man  -f   命令
相当于
whatis   命令
 
先用whatis看命令有哪几个级别的帮助,再调用相对应的man级别。
举例:
man -5 passwd
man -4 null
man -8 ifconfig
 
查看和命令相关的所有帮助
man -k 命令
相当于
apropos  命令
 
 
选项帮助:help
命令  --help
 
shell内部命令帮助
help  shell内部命令
 
确定是否是shell内部的命令,用whereis
whereis ls  可以查到命令所在路径,说明不是shell内部命令
whereis cd不能查看命令所在路径,说明是shell内部命令
举例:help cd
 
详细命令帮助:info
info  命令
 
 
第五节 压缩与解压缩命令
压缩格式:.zip   .gz   .bz2  
常用:  .tar.gz     .tar.bz2
 
.zip格式解压缩
zip  压缩文件名   源文件
#压缩文件
zip   -r   压缩文件名   源目录
#压缩目录
 
解压
unzip  压缩文件
 
 
.gz格式解压缩
gzip  源文件
#压缩为.gz格式的压缩文件,源文件会消失
 gzip  -c   源文件> 压缩文件
#压缩为.gz格式,源文件保留
gzip -r  目录(gzip不会打包)
#压缩目录里下的所有子文件,但是不能压缩目录
 
解压
gzip  -d  压缩文件
gunzip  压缩文件
 
 
 
.bz2格式解压缩(不能解压缩目录)
bzip2  源文件
#压缩为.bz2格式的压缩文件,源文件会消失
bzip2  -k   源文件
#压缩为.bz2格式,源文件保留
 
解压
bzip2  -d  压缩文件
bunzip2  压缩文件
-k保留压缩文件
 
 
打包命令:tar
tar  -cvf   打包文件名    源文件
选项:
   -c   打包
   -v   显示过程
   -f    指定打包后的文件名
 
解打包命令
tar -xvf   打包文件名
选项
   -x   解打包
 
 
.tar.gz压缩格式
其实.tar.gz格式是先打包为.tar格式,再压缩为.gz格式
tar  -zcvf   压缩包名   源文件
选项:
   -z    压缩为.tar.gz格式
 
解压
tar  -zxvf   压缩包名
 
 
.tar.bz2压缩格式
tar  -jcvf   压缩包名.tar.bz2   源文件
选项:
   -z    压缩为.tar.bz2格式
 
解压
tar  -jxvf   压缩包名.tar.bz2
 
解压到指定位置
tar  jxvf  压缩包名.tar.bz2   -C   指定目录
 
压缩多个文件到指定位置
tar  -zcvf    绝对路径/压缩包名.tar.gz   多个文件(用空格隔开)
 
只看文件,不解压。
tar  -ztvf  压缩包名.tar.gz
 
 
第六节:关机和重启命令
shutdown命令
shutdown   【选项】   时间
  选项:
    -c   取消前一个关机命令
    -h   关机
    -r    重启
 
halt/poweroff/init 0  都可以关机,但不太安全,知道就好
reboot/init 6  都可以重启,用reboot较好
 
系统运行级别
0   关机
1   单用户(和windows的安全模式差不多,启动最小程序,主要做系统修复)
2   不完全多用户,不含NFS服务(NFS服务是linux的文件共享服务)
3    完全多用户(就是我们现在使用的字符界面)
4    未分配
5     图形界面
6     重启
 
 runlevel可以看到当前处于哪个级别
 
logout 退出登录
用远程管理工具管理linux时,没有退出登录问题不大,因为Linux可同时登录用户可达256个,但要是远程管理windows,会造成用户卡着,同时登录用户又比较少,就只能重启服务器。重启服务器给客户端带来很差的用户体验。尽量养成logout的习惯,不要直接关闭。
 
 
 
第七节:其他常用命令
挂载命令(相当于windows分配盘符)
 
mount  查询系统中已经挂载的设备
mount  -a   将/etc/fstab自动挂载  
//u盘和光驱不建议做成自动挂载,因为Linux很实诚,如果你忘了放光驱,而Linux自动挂载时没找到光驱文件的话就会导致系统起不来。
 
mount  【-t   文件系统】【-o   特殊选项】  设备文件名  挂载点
选项:
-t 文件系统:加入文件系统类型来指定挂载的类型,可ext3,ext4,iso9660等文件系统
-o特殊选项:可以指定挂载的额外选项
 
挂载光盘(sr0):
①放光盘
②建立挂载点mkdir  /mnt/cdrom
③挂载命令mount -t  iso9660  /dev/sr0  /mnt/cdrom/   
#设备文件名也可以是/dev/cdrom,是软链接,但建议写sr0
#-t  iso9660也可以省略
④读取数据 cd   /mnt/cdrom
 
卸载命令(一定要记得卸载)
umount  设备文件名/挂载点   
#要是碰到设备正忙,可能是因为你占用目录,应该cd退出来
 
挂载U盘(一般是sdb1)
①查看U盘文件设备名fdisk  -l
②建立挂载点mkdir  /mnt/usb
③挂载命令 mount -t  vfat  /dev/sdb1  /mnt/usb
 
注意:Linux默认是不支持NTFS文件系统的
 
 
用户登录查看和用户交互命令
 
w  查看登录用户信息  ,显示的比较多
who 查看登录用户信息
last 查询当前登录和过去登录的用户信息,默认读取 /var/log/wtmp
#如果用vi  /var/log/wtmp则读取的是乱码,避免人为修改日志文件。毕竟last可以查看用户登录信息,可以判断是否有其他人登录过。
lastlog查看所有用户最后一次登录时间  默认读取/var/log/lastlog
 
 
 
 
第三章:Shell基础
 
 
 
.
 
 

猜你喜欢

转载自www.cnblogs.com/double891/p/8974848.html