一、命令基本格式及文件处理命令
1.命令提示符
[root@zcq ~]#
root:当前登录用户
zcq:主机名
~ :当前用户所在的目录
#: 超级用户的提示符
普通用户的提示符是$
2.命令格式
命令 [选项] [参数]
个别命令使用不遵循格式
当有多个选项时,可以写在一起
简化选项与完整选项
-a等于--all
3.ls
列出文件或者目录的信息,目录的信息就是其中包含的文件。
# ls [-aAdfFhilnrRSt] file|dir
-a :列出全部的文件
-d :仅列出目录本身
-l :以长数据串行列出,包含文件的属性与权限等等数据
-h : 人性化显示文件大小
-i : 显示inode
4.文件权限
-rwxrwxrwx. 1
-文件类型(- 文件 d目录 l软链接文件)
每三个字母一组分别代表 u所有者 g所属组 o其他人
r读 w写 x执行
.代表ACL权限
1代表引用计数
5.mkdir
创建目录。
# mkdir [-mp] 目录名称
-m :配置目录权限
-p :递归创建目录(这个很常用)
6.cd
更换当前目录。
cd [相对路径或绝对路径]
cd - 回到上一次目录
7.pwd
显示当前所在位置
8.rmdir
删除目录,目录必须为空。
rmdir [-p] 目录名称
-p :递归删除目录
9.rm
删除文件。
# rm [-fir] 文件或目录
-r :递归删除
-f : 强制删除
10.cp
复制文件。
如果源文件有两个以上,则目的文件一定要是目录才行。
cp [-adfilprsu] source destination
-r 复制目录
-p 连带文件属性复制
-d 若源文件是链接文件,则复制链接属性
-a 相当于 -pdr,包括文件的时间信息等.
11.mv
移动文件。
# mv [-fiu] source destination
# mv [options] source1 source2 source3 .... directory
-f : force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖
12.常见目录
目录 | 说明 |
---|---|
/root | 根目录,万物起源 |
/boot | 包含 Linux 内核,最初的 RMA 磁盘映像(系统启动时,由驱动程序所需),和启动加载程序 有趣的文件:<br />/boot/grub/grub.conf or menu.lst,被用来配置启动 加载程序<br />/boot/vmlinuz, Linux 内核 |
/bin | 包含系统启动和运行所必须的二进制程序 |
/sbin | s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序 |
/usr | 这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于 windows 下的 program files 目录。usr (unix software resource) |
/usr/bin | 系统用户使用的应用程序 |
/usr/sbin | 超级用户使用的比较高级的管理程序和系统守护程序 |
/usr/src | 内核源代码默认的放置目录 |
/proc | 系统内存的映射目录,提供内核与进程信息 |
/lost+found | 一般情况下是空的,当系统非法关机后,这里就存放了一些文件,文件系统恢复时的恢复文件 |
/var | 这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。存放邮件、系统日志等变化文件,存放系统或程序运行过程中的数据文件(variable) |
/tmp | 这个目录是用来存放一些临时文件的 |
/etc | 存放系统配置文件。它也包含一系列的 shell 脚本,在系统启动时,这些脚本会运行每个系统服务。这个目录中的任何文件应该是可读的文本文件。<br /><br />/etc/crontab ,定义自动运行的任务。<br />/etc/fstab ,包含存储设备的列表,以及与他们相关的挂载点。<br /> /etc/passwd ,包含用户帐号列表。 |
/home | 用户主目录,在通常的配置环境下,系统会在 /home 下,给每个用户分配一个目录。普通只能在他们自己的目录下创建文件。这个限制保护系统免受错误的用户活动破坏。 |
/dev | 这是一个包含设备结点的特殊目录。“一切都是文件”,也使用于设备。在这个目录里,内核维护着它支持的设备 |
/lib | 动态连接共享库,.so 文件,类似于 Windows 里的 dll 文件。 |
/mnt | 系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在 /mnt/ 上,然后进入该目录就可以查看光驱里的内容了。 |
/media | 系统会自动识别一些设备,例如 U 盘、光驱等等,把识别的设备挂载到这个目录下。 |
/sys | sys 虚拟文件系统挂载点 |
/srv | 存放服务相关数据 |
/opt | 这是给主机额外安装软件所摆放的目录。比如你安装一个 ORACLE 数据库则就可以放到这个目录下。默认是空的。 |
/srv | 该目录存放一些服务启动之后需要提取的数据。 |
/selinux | 这个目录是 Redhat/CentOS 所特有的目录,Selinux 是一个安全机制,类似于windows 的防火墙,但是这套机制比较复杂,这个目录就是存放selinux 相关的文件的。 |
13.链接命令
生成链接文件
ln -s [原文件] [目标文件]
-s 生成软链接
硬链接
一般情况下,文件名和 inode 号码是 "一一对应" 关系,每个 inode 号码对应一个文件名。但是,Unix/Linux 系统允许,多个文件名指向同一个 inode 号码。
这意味着,可以用不同的文件名访问同样的内容;对文件内容进行修改,会影响到所有文件名;但是,删除一个文件名,不影响另一个文件名的访问。这种情况就被称为 "硬链接"(hard link)。
- 拥有相同的 i 节点和存储 block 块,可以看做是同一个文件
- 可通过 i 节点识别
- 不能跨分区
- 不能针对目录使用
软链接
软链接(Symbolic Link,又称符号链接):软链接能跨越不同的文件系统,软链接记录的是目标的 path。源文件删除后,则软链接无效。相当于Windows系统中的“快捷方式”
- 类似 windows 的快捷方式
- 软链接拥有自己的 i 节点和 block 块,但是数据块中只保存原文件的文件名和 i 节点号,并没有实际的文件数据
- 修改任意一个文件,另一个都会改变
- 删除源文件,则软链接无法使用
- 软链接的文件权限都为 rwxrwxrwx (文件权限以原文件为准)
- 若要创建软链接,则创建的源文件必须使用绝对路径,否则在使用软链接时会报错
二、指令与文件搜索
1.locate(文件搜索命令)
文件搜索。可以用关键字或者正则表达式进行搜索。速度非常快
注意: locate 是从数据库中读取数据(/var/lib/mlocate),而不是从文件系统中读取。从数据库中读取时是读取 updatedb 命令返回的结果,而 updatedb 命令默认是一天(24小时)才自动运行一次,这就意味着如果是最新创建的文件,使用 locate 命令可能查找不到。
解决方法 : 在使用 locate命令前,先手动运行updatedb命令(需要 root 权限):sudo updatedb
实例
搜索 etc 目录下所有以 sh 开头的文件:
locate /etc/sh
搜索用户主目录下,所有以m开头的文件:
locate ~/m
搜索用户主目录下,所有以m开头的文件,并且忽略大小写:
locate -i ~/m
可以通过/etc/updatedb.conf 配置文件配置搜索2
locate配置文件.png
2.whereis与which(命令的搜索命令)
# whereis [-bmsu] dirname/filename
-b 只查找可执行文件
-m 只查找帮助文件
[root@zcq ~]# whereis ls
which
-
搜索系统命令所在路径及别名
-
PATH环境变量:定义的是系统搜索命令的路径
echo $PATH
# which [-a] command
-a :将所有指令列出,而不是只列第一个
3.find
- find 搜索范围 搜索文件
- find / -name install.log 避免大范围搜索,会非常耗费系统资源 find 是在系统当中搜索符合条件的文件名。如果需要匹配,使用通配符匹配,通配符是完全匹配。
- Linux 通配符
* 匹配任意内容
? 匹配任意一个字符
[] 匹配任意一个中括号内的字符
- 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 . -size 25k 查找文件大小是 25kb 的文件
-25k 小于25kb的文件
25k 等于25kb的文件
+25k 大于25kb的文件
- find . -inum 262422 查找 i 节点是 262422 的文件
- find /etc/ -size +20k -a -size -50k 查找 /etc/ 目录下,大于 20k 并且小于 50k 的文件
- -a and 逻辑与,两个条件都满足
- -o or 逻辑或,两个条件满足一个即可
- find /etc/ -size +20k -a -size -50k -exec ls -lh {} ; 查找/etc/目录下,大于20k并且小于50k的文件,并显示详细信息 -exec/ 命令 {} ; 对搜索结果执行操作
4.grep(搜索字符串命令)
在文件当中匹配符合条件的字符串
grep [选项] 字符串 文件名
-i 忽略大小写
-v 排除指定字符串
三、帮助命令
1. man 命令( 获取指定命令的帮助)
man ls
查看ls的帮助
2. 命令 --help( 获取命令选项的帮助)
ls --help
四、压缩与解压缩命令
常用压缩格式如下:
扩展名 | 压缩程序 |
---|---|
*.zip | zip |
*.gz | gzip |
*.bz2 | bzip2 |
*.tar | tar 程序打包的数据,没有经过压缩 |
*.tar.gz | tar 程序打包的文件,经过 gzip 的压缩 |
*.tar.bz2 | tar 程序打包的文件,经过 bzip2 的压缩 |
.zip
(一)压缩
- zip 压缩文件名 源文件
压缩文件 - zip -r 压缩文件名 源目录
压缩目录
(二)解压缩
- unzip 压缩文件
解压.zip文件
.gz
(一)压缩
- gzip 源文件
压缩为.gz格式的压缩文件,源文件会消失 - gzip -c 源文件 > 压缩文件
压缩为.gz格式的压缩文件,源文件保留
注:-c是将压缩的格式不写入新文件,打印到屏幕上,利用输出重定向造成一个既压缩.gz格式源文件也不消失的现象。但是gzip本身是不支持保留源文件压缩的。
- gzip -r 目录
压缩目录下所有的子文件,但是不能压缩目录
(二)解压缩
- gzip -d 压缩文件
解压缩文件 - gunzip 压缩文件
解压缩文件
.bz2
(一)压缩
- bzip2 源文件
压缩为.bz2格式,不能保留源文件 - bzip2 -k 源文件
压缩之后保留源文件 - 注意:bzip2命令不能压缩目录
(二)解压缩
- bzip2 -d 压缩文件
解压缩,-k保留压缩文件 - bunzip2 压缩文件
解压缩,-k保留压缩文件
tar
将一个目录打包成文件.tar格式,这样 .gz
和 .bz2
可压缩,解压缩目录
- tar -cvf 打包文件名 源文件
- 选项:
-c 打包
-x 解打包
-v 显示过程
-f 指定打包后的文件名
解打包命令
- tar -xvf 打包文件名
.tar.gz
- 其实.tar.gz格式是先打包为.tar格式,再压缩为.gz格式
- tar -zcvf 压缩包名.tar.gz 源文件
- 选项:
-z: 压缩为.tar.gz格式 - tar -zxvf 压缩包名.tar.gz
- 选项:
-x: 解压缩.tar.gz格式
.tar.bz2
其实 .tar.gz
格式是先打包成 .tar
格式,再压缩为 .gz
格式
-
tar -jcvf 压缩包名 .tar.bz2 源文件
-
选项:
-z:压缩为.tar.gz格式-j:支持bzip2解压文件
-
tar -jxvf 压缩包名.tar.bz2
-
选项:
-x: 解压缩.tar.gz格式
tar命令参考选项
-A或--catenate:新增文件到以存在的备份文件;
-B:设置区块大小;
-c或--create:建立新的备份文件;
-C <目录>:这个选项用在解压缩,若要在特定目录解压缩,可以使用这个选项。
-d:记录文件的差别;
-x或--extract或--get:从备份文件中还原文件;
-t或--list:列出备份文件的内容;
-z或--gzip或--ungzip:通过gzip指令处理备份文件;
-Z或--compress或--uncompress:通过compress指令处理备份文件;
-f<备份文件>或--file=<备份文件>:指定备份文件;
-v或--verbose:显示指令执行过程;
-r:添加文件到已经压缩的文件;
-u:添加改变了和现有的文件到已经存在的压缩文件;
-j:支持bzip2解压文件;
-v:显示操作过程;
-l:文件系统边界设置;
-k:保留原有文件不覆盖;
-m:保留文件不被覆盖;
-w:确认压缩文件的正确性;
-p或--same-permissions:用原来的文件权限还原文件;
-P或--absolute-names:文件名使用绝对名称,不移除文件名称前的“/”号;
-N <日期格式> 或 --newer=<日期时间>:只将较指定日期更新的文件保存到备份文件里;
--exclude=<范本样式>:排除符合范本样式的文件。
五、linux关机重启命令
1.shutdown
shutdown [选项] 时间
-c : 取消前一个关机命令
-h : 关机
-r : 重启
2.其他(不安全)
halt
poweroff
init 0
网友评论