linux常用命令(慕课网笔记)

1.命令基本格式
2.文件处理命令
3.文件搜索命令
4.帮助命令
5.压缩与解压缩命令
6.关机和重启命令
7.其他常用命令


[root@localhost ~]#
命令行说明:
root表示用户,localhost表示主机名,~表示所在目录(这里~是家目录),#超级用户提示符,$普通用户的提示符


命令格式:
命令 [选项]  [参数]
注意:
个别命令使用不遵循此格式
但有多个选项时,可以写在一起
简化选项与完整选项    例如:-a等于--all

查询目录中内容:ls
ls [选项]   [文件或目录]
选项:选项可以一起用,例如:ls -lh
-a    显示所有文件,包括隐藏文件
-l    显示详细信息
-d    查看目录属性
-h    人性化显示文件大小
-i    显示inode,文件id号
参数:选项后还可以接文件或者目录
常用如下:
[root@localhost ~]# ls -l
总用量 48
-rw-------. 1 root root  1272 1月   9 02:02 anaconda-ks.cfg
-rw-r--r--. 1 root root    15 1月   9 06:47 home
-rw-r--r--. 1 root root 27338 1月   9 02:02 install.log
-rw-r--r--. 1 root root  7572 1月   9 02:01 install.log.syslog

文件权限:
例如:- rw-r--r--
可以分解为:总共10位
第一位:-文件类型(-表示文件    d表示目录    l表示软连接文件)
后面每三位一组:
r读,w写,x执行
前三位表示:用户权限u
中三位表示:用户组权限g
后三位表示:所有其他用户权限o

文件处理命令:

建立目录:mkdir
mkdir [-p] [目录名]
-p 递归创建
例如:-p的用法
mkdir -p japan/canlaoshi
在目录中,没有japan目录,如果没有-p是没办法直接创建canlaoshi目录
命令执行后,会创建japan目录,再在japan里面创建canlaoshi目录

切换所在目录:cd
cd [目录]        英文原意:change directory
简化操作:
cd ~        进入当前用户家目录
cd -         进入上次目录
cd ..         进入上一级目录
cd .          进入当前目录

查询所在目录位置:pwd
pwd英文原意:print working directory

删除空目录:rmdir
rmdir [目录名]
英文原意:remove empty directories
例如:rmdir japan/        删除japan目录

删除文件货目录:rm
rm -rf [文件或目录]
英文原意:remove
选项:-r 删除目录    -f 强制

复制命令:cp
cp [选项] [源文件或目录] [目标目录]
英文原意:copy
选项
-r    复制目录
-p    连带文件属性复制
-d    若源文件是连接,则复制连接属性
-a    相当于-pdr上面全部
例如:

剪切或改名目录:mv
mv [源文件或目录] [目标目录]
英文原意:move
mv剪切目录的时候和剪切文件的时候都一样,不用加-r(cp不一样)

常见目录作用:
/根目录
/bin    命令保存目录(普通用户就可以读取的命令)
/boot    启动目录,启动相关文件
/dev    设备文件保存目录
/etc    配置文件保存目录
/home    普通用户的家目录
/lib    系统库保存目录
/mnt    系统挂载目录
/media    挂载目录

/root    超级用户的家目录
/tmp    临时目录
/sbin    命令保存目录(超级用户才能使用的目录)
/proc    直接写入内存的
/sys
/usr    系统软件资源目录
    /usr/bin/    系统命令(普通用户)
    /usr/sbin/    系统命令(超级用户)
/var    系统相关文档内容

Tips:可以做练习的目录:home,root,tmp(其他目录最好少动)

链接命令:ln
ln -s [源文件] [目标文件]
英文原意:link
功能描述:生成链接文件    选项:-s 创建软连接
例如
ln /root/xx.cfg /tmp/ana.hard    两个都是硬链接
硬链接是前面的/root/xx.cfg,在/tmp/目录会生成ana.hard这个软连接
两个文件内容完全一样,修改一个文件,另外一个一样会变化
把源文件xx.cfg删除掉,ana.hard一样可以使用
ls -i  /root/xx.cfg /tmp/ana.hard
查看可以看到两个文件i节点号是一样的

ln -s /root/xx.cfg /tmp/ttt.hard      因为加了-s,所以ttt.hard是软连接
修改任何一个,其他两个文件内容也会变.ttt.hard的i节点号和其他两个不一样
如果xx.cfg和ana.hard两个文件删除掉.ttt.hard就没用了

文件搜索命令:

文件搜索命令:locate    (快,功能单一)
命令搜索命令whereis与which
文件搜索命令:find        (慢,功能强大)
字符串搜索名:grep
find命令与grep命令的区别

locate命令格式:
locate 文件名
tips:在后台数据库中按文件名搜索,搜索速度更快
#locate命令说搜索的后台数据库  /var/lib/mlocate
更新数据库:updatedb
locate只可以按照文件名搜索

locate,whereis与which命令都会遵循配置文件:
vi /etc/updatedb.conf
对搜索参数进行配置:
PRUNE_BIND_MOUNTS = "yes"
PRUNEFS = "9p afs anon_inodefs auto autofs bdev binfmt_misc cgroup cifs coda configfs cpuset debugfs devpts ecryptfs exofs fuse fusectl gfs gfs2 hugetlbfs inotifyfs iso9660 jffs2 lustre mqueue ncpfs nfs nfs4 nfsd pipefs proc ramfs rootfs rpc_pipefs securityfs selinuxfs sfs sockfs sysfs tmpfs ubifs udf usbfs"
PRUNENAMES = ".git .hg .svn"
PRUNEPATHS = "/afs /media /net /sfs /tmp /udev /var/cache/ccache /var/spool/cups /var/spool/squid /var/tmp"
Tips:
PRUNE_BIND_MOUNTS = "yes"     开启搜索限制
PRUNEFS =    搜索时,不要搜索的文件系统
PRUNENAMES =    搜索时,不搜索的文件类型
PRUNEPATHS =    搜索时,不搜索的路径

搜索命令的命令whereis
格式:whereis [选项] 命令名
搜索命令所在路径及帮助文档所在位置
选项:    -b: 只查找可执行文件    -m: 只查询帮助文件

搜索命令的命令which
格式:    which 文件名
搜索命令所在路径及别名

文件搜索命令find
格式:    find [搜索范围] [搜索条件]

按照文件名搜索:
find / -name install.log
Tips:
避免大范围搜索,会非常耗费系统资源
find是在系统当中搜索符合条件的文件名.如果需要匹配,使用通配符匹配,通配符是完全匹配
find /root -iname install.log    不区分大小写
find /root -user root        按照所有者搜索
find /root -nouser        查找没有所有者的文件

按照时间搜索:
find /var/log/ -mtime +10    查找10天前修改的文件
-10    10天内修改文件
10       10天当天修改的文件
+10    10天前修改的文件
atime    文件访问时间
ctime    改变文件属性
mtime    修改文件内容

按照文件大小搜索:
find /root -size 25k    查找文件大小是25kb的文件
-25k    小于25kb的文件
25k    等于25kb的文件
+25k    大于25kb的文件
Tips:按照k是小写,按照M是大写

按照i节点搜索文件:
find /root -inum i节点
Tips:知道i节点查找文件:    ls -i 文件名

搜索逻辑:
find /etc -size +20k -a -size -50k    查找/etc/目录下,大于20kb并且小于50kb的文件
Tips:
-a and 逻辑与,两个条件都满足    -o or 逻辑或,两个条件满足一个即可

find /etc -size +20k -a -size -50k -exec ls -lh {} \;
-exec:     find的结果交给后面ls命令处理(  -exec   {} \;  是标准格式)

文件内搜索:gerp
grep [选项] 字符串 文件名    #在文件当中匹配符合条件的字符串
选项: -i 忽略大小写    -v 配出指定字符串
使用正则表达式匹配(find使用通配符)

帮助命令:man
格式: man [-f] 命令名

选项帮助:
格式:    命令 --help

shell内部命令帮助:
help shell内部命令    #获取shell内部命令的帮助
eg:
whereis cd    #确定是否是shell内部命令
help cd        #获取内部命令帮助


压缩命令:
常见压缩格式:    .zip    .rar    .7z    .tar.gz    .tar.bz2

zip压缩文件:
zip 压缩文件名 源文件名
压缩目录:
zip -r 压缩文件名 源目录
Tips:压缩文件名后缀可以.zip和.rar这些都没区别

zip解压文件:
unzip 文件名

.gz格式压缩
gzip 源文件    #压缩为.gz格式,源文件会消失
gzip -c 源文件 > 压缩文件    #源文件保留
eg.    gzip -c cangls > cangls.gz
gzip -r 目录    #压缩目录下所有的子文件,但是不能压缩目录

gz解压缩:
gzip -d 压缩文件    #解压缩文件
gunzip 压缩文件    #解压缩文件

bz2格式压缩:
bzip2 源文件    #压缩为.bz2格式,不保留源文件
bzip2 -k 源文件    #压缩之后保留源文件
Tips:bizp2不能压缩目录

bz2解压:
bzip2 -d 压缩文件    #解压缩,-k保留压缩文件
bunzip 压缩文件        #解压缩,-k保留压缩文件

打包命令:tar
tar -cvf 打包文件名 源文件
选项:-c打包    -v显示过程    -f指定打包后的文件名
eg.    tar -cvf longzls.tar    longzls
解打包命令:-x
tar -xvf 打包文件名    #选项:-x解打包
eg.    tar -xvf longzls.tar

.tar.gz压缩格式   linux中最常见
 #.tar.gz格式是先打包为.tar格式,再压缩为.gz格式
tar -zcvf 压缩包名.tar.gz 源文件
选项:    -z 压缩为.tar.gz格式
tar -zxvf 压缩包名.tar.gz   
选项:    -x    解压缩.tar.gz格式

linux关机与重启命令
shutdown命令
shutdown [选项] 时间
选项:    -c取消前一个关机命令    -h关机    -r重启
eg.    shutdown -r now    
date    #查看当前时间:2015年 01月 10日 星期六 06:13:02 CST
shutdown -r 07:00 &    #在7点重启,&表示后台执行,这样可以 执行其他命令

关机命令:(这3个命令都不安全,关机不保存)
halt    poweroff    init 0

重启命令:
reboot    init 6
Tips:系统运行级别
0关机    1单用户    2不完全多用户,不含NFS服务    3完全多用户
4未分配    5图形界面    6重启
eg.
init 5    可以启动图形界面
runlevel    #可以显示当前级别

退出登录:logout
远程登录的时候不要直接关闭窗口,而是用logout退出登录

挂载命令:
查询与自动挂载:    
mount    #查询系统中已经挂载的设备
mount -a    #一句配置文件/etc/fstab的内容,自动挂载
/etc/fstab    是linux中自动挂载的文件,写到文件后,开机会自动挂载

挂载命令格式:
mount [-t 文件系统] [-o 特殊选项] 设备 文件名 挂载点
选项:
-t 文件系统:加入文件系统类型来指定挂载的类型,可以ext3,ext4,iso9660等文件系统
-o 特殊选项: 可以指定挂载的额外选项

cd home/
vi hello.sh    #下面内容
#!/bin/bash
echo "hello world!"
保存退出
赋予执行权限:
chmod 755 hello.sh
./hello.sh    #执行文件
显示: hello world!

挂载光盘
mkdir /mnt/cdrom/    #建立挂载点
mount -t iso9660 /dev/sr0 /mnt/cdrom/    #挂载光盘
mount -t iso9660 /dev/cdrom /mnt/cdrom/    #挂载光盘
#/dev/sr0是光盘挂载点,相当于/dev/cdrom
#/mnt/cdrom 挂载到cdrom中
出现下面一行,说明挂载成功:
mount: block device /dev/sr0 is write-protected, mounting read-only
cd cdrom/
ll
可以查看到光盘内容
Tips:挂载点只要是空目录就可以

卸载光盘命令:
umount 设备文件名或挂载点
eg.    umount /mnt/cdrom  或者   umount /dev/sr0
Tips:卸载前需要离开光盘  cd ~

挂载U盘
fdisk -l    #查看u盘设备文件名
mount -t vfat /dev/sdb1 /mnt/usb/
Tips:一般u盘插入是sbd1    /mnt/usb/是挂载点

用户登录查看命令:
查看用户登录信息:w  或者  who

查询当前登录和过去登录的用户信息:last    
last命令默认是读取/var/log/wtmp文件数据
命令输出:
    用户名    登录终端    登录ip    登录时间    退出时间(在线时间)
root            pts/0        192.168.1.20     Fri Jan  9 06:22 - 13:33  (07:11)
root             tty1                          Fri Jan  9 06:20   still logged in
reboot       system boot  2.6.32-431.el6.x Fri Jan  9 06:20 - 10:53 (1+04:32)
root         pts/0        192.168.1.20     Fri Jan  9 06:19 - down   (00:00)
root         pts/0        192.168.1.20     Fri Jan  9 06:17 - 06:19  (00:01)

查看所有用户的最后一次登录时间:lastlog

 

你可能感兴趣的:(linux)