一、环境准备
环境:VMware下的CentOS
安装VMware与CentOS
https://blog.csdn.net/m0_62718093/article/details/121616250https://blog.csdn.net/m0_62718093/article/details/121616250二、基础命令
命令格式:命令 \[-选项][参数] 参数 eg: ls -la /usr 说明: 大部分命令遵从该格式 多个选项时,可以一起写 eg: ls –l –a ls –la 简化选项与完整选项(注:并非所有选项都可使用完整选项) eg: ls –all ls –a 帮助命令:(相当于命令说明书)
英文:manual 命令路径:/usr/bin/man 执行权限:所有用户 作用:获取命令或配置文件的帮助信息 语法:man [命令/配置文件] eg:man ls man services (查看配置文件时,不需要配置文件的绝对路径,只需要文件名即可) 调用的是more命令来浏览帮助文档,按空格翻下一页,按回车翻下一行,按q退出。
help 查看shell内置命令的帮助信息 eg: help cd 命令名 --help 命令名 --help 列举该命令的常用选项 eg: cp --help
英文:change directory 命令路径:内部命令 执行权限:所有用户 cd : 切换工作目录 cd -: 回到上一次的操作所在位置 cd ~: 回到用户家目录 cd ./ : 当前目录 cd ../: 回到上一级目录 cd : 回到用户家目录
查看目录 ls + 选项 + 目录名 英文:list 命令路径:/bin/ls 执行权限:所有用户 ll 等价于ls -l -l 列表形式显示 eg: ls -l /bin 查看根目录下的bin目录下的所有文件或目录以列表的形式查看 -a 所有文件或目录包括隐藏文件 eg: ll -a /bin 查看根目录下的bin目录下的所有文件或目录包含隐藏文件 -h 以可读的方式显示文件大小,配合-l使用 eg: ll -h /bin 查看根目录下的bin目录下的所有文件或目录(显示文件大小单位,如KB等)
英文:print working directory 命令路径:/bin/pwd 执行权限:所有用户 作用:显示当前工作目录 linux下的路径 pwd: 打印当前工作目录(全目录) 绝对路径: 以根目录为开始的目录 相对路径: 相对当前目录的路径 语法: pwd [-LP] eg: cd /etc/init.d pwd [-P]
英文:make directories 命令路径:/bin/mkdir 执行权限:所有用户 作用:创建新目录 语法:mkdir [-p] 目录名 -p 父目录不存在情况下先生成父目录 (parents) eg: mkdir linux/test 如果目录linux不存在,则报错,使用参数-p即可自动创建父目录
命令路径:/bin/touch 执行权限:所有用户 作用:创建空文件或更新已存在文件的时间 语法:touch 文件名 eg: touch a.txt b.txt touch {a.txt,b.txt} 同时创建多个文件,注意:后面{}中,中间不能有空格 eg: touch "program files" 创建带空格的文件 注意:生产环境中,文件名,一定不要加空格
命令路径:/bin/echo 执行权限:所有用户 作用:查看某些环境变量/给文件增加内容 语法:echo '字符串' > 文件名 eg: echo $PWD 查看当前的路径 echo 'haha' > test1.txt 将字符串haha添加到test1.txt里面,注意;会将文件原来的内容覆盖 echo 'haha' >> test1.txt 将字符串haha追加到test1.txt中,不会覆盖原来的内容
英文:copy 命令路径:/bin/cp 执行权限:所有用户 作用:复制文件或目录 语法:cp [–rp] 源文件或目录 目的目录 -r -R recursive 递归处理,复制目录 -p 保留文件属性 (原文件的时间不变) eg: 1.相对路径 cp –R /etc/* . 将etc下的全部内容递归拷贝到当前的目录下 2.绝对路径 cp –R **/**ect/service /root/test/aa/bb
英文:move 命令路径:/bin/mv 执行权限:所有用户 作用:移动文件或目录、文件或目录改名 语法:mv 源文件或目录 目的目录
英文:remove 命令路径:/bin/rm 执行权限:所有用户 作用:删除文件 语法: rm [-rf] 文件或目录 -r(recursive)删除目录,同时删除该目录下的所有文件 -f(force) 强制删除文件或目录 即使原档案属性设为唯读,亦直接删除,无需逐一确认 注意:工作中,谨慎使用rm –rf 命令。
1) 英文: link 命令路径:/bin/ln 执行权限:所有用户
2) 作用:产生链接文件
3) 语法:
ln -s \[源文件][目标文件] 创建软链接 相当于建立快捷方式 注意:源文件 使用 绝对路径 ln \[源文件][目标文件] 创建硬链接 相当于深拷贝 eg: ln -s /etc/service ./service.soft 创建文件/etc/service的软链接service.soft eg: ln /etc/service /service.hard 创建文件/etc/service的硬链接/service.hard
4) 软连接类似于windows下的快捷方式
软连接文件格式: lrwxrwxrwx. 1 root root 13 Jul 20 07:50 service -> /etc/services
5) 格式解析(特征):
1.1代表硬链接数量,如果该文件没有硬链接,就只有本身一个硬链接。 2.13代表 链接文件的长度 3.软连接的文件类型是 l(软连接),软连接文件的权限 都是 lrwxrwxrwx 4.-> 箭头指向到源文件 真正的权限取决于对源文件的权限 时间值为创建软连接的时间 软连接可以跨文件系统生成
6) 硬链接特征
1.相当于 cp -p +同步更新 2.通过i节点识别,与源文件有相同的inode节点 3.硬链接不能跨分区,ln /home/test/issuels /boot/test (错误) 4.不能针对目录使用 ln /tmp/ aa.hard (无法将目录/tmp 生成硬链接)
7) 删除软连接,源文件还在
rm -rf symbolic_name
8) inode说明
Linux文件系统中的inode主要用于存放档案和目录的基本信息,当系统创建文件系统的同时会创建大量的inode
英文:concatenate 命令路径:/bin/cat 执行权限:所有用户 作用:显示文件内容,直接显示全部内容 语法:cat \[-n][文件名] -A 显示所有内容,包括隐藏的字符 -n 显示行号 eg:cat /etc/services
命令路径:/bin/more 执行权限:所有用户 作用:分页显示文件内容 语法:more [文件名] 空格或f 显示下一页 enter键 显示下一行 q或Q 退出 相关指令:less
命令路径:/usr/bin/head 执行权限:所有用户 作用:查看文件前几行(默认10行) 语法:head [文件名] -n 指定行数 eg:head -20 /etc/services head –n 3 /etc/services
命令路径:/usr/bin/tail 执行权限:所有用户 作用:查看文件的后几行 语法:tail [文件名] -n 指定行数 获取一个大文件的部分文件,可使用head或tail命令 eg: head -n 100 /etc/services >config.log 会直接用 /etc/services里面前100行的数据导入conflg.log文件中,并覆盖其中的内容 head -n 100 /etc/services >>config.log 会直接用 /etc/services里面前100行的数据导入conflg.log文件中,并进行内容的追加
命令路径:/bin/find 执行权限:所有用户 作用:查找文件或目录 语法:find \[搜索路径][匹配条件] 如果没有指定搜索路径,默认从当前目录查找 find命令选项
1) -name按名称查找
说明: 精准查找 eg: find /etc -name “init” 在目录/etc中查找文件init
2) -iname按名称查找
说明: 不区分大小写 find查找字符匹配: *: 匹配所有 ?: 匹配单个字符 eg: find /etc -name “init???” 在目录/etc中查找以init开头的,且后面有三位的文件 模糊匹配的条件,建议使用单引号或双引号括起来。 如果*被转义,可使用 单双引号括住查询条件,或者使用\\\*。 eg: find –name "*g"
3) -size按文件大小查找
以block为单位,一个block是512B, 1K=2block +大于 -小于 不写是等于 eg: find /etc -size -204800 在etc目录下找出小于100MB的文件 100MB=102400KB=204800block
4) -type按文件类型查找
f 二进制文件 l 软连接文件 d 目录 c 字符文件 eg: find /dev -type c find查找的基本原则: 占用最少的系统资源,即查询范围最小,查询条件最精准 注意: 如果明确知道查找的文件在哪一个目录,就直接对指定目录查找,不查找根目录/
命令路径:/bin/grep 执行权限:所有用户 作用:在文件中搜寻字符串匹配的行并输出 语法:grep [-cinv] '搜寻字符串' filename 选项与参数: -c :输出匹配行的次数(是以行为单位,不是以出现次数为单位) -i :忽略大小写,所以大小写视为相同 -n :显示匹配行及行号 -v :反向选择,显示不包含匹配文本的所有行。 eg:grep ftp /etc/services eg: grep -v ^# /etc/inittab 去掉文件行首的#号 eg: grep -n “init”/etc/inittab 显示在inittab文件中,init匹配行及行号 eg: grep -c“init”/etc/inittab 显示在inittab文件中,init匹配了多少次 管道的功能(过滤) find /root | grep a.txt
命令路径:/usr/bin/which 执行权限:所有用户 作用:显示系统命令所在目录(绝对路径及别名) which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令 eg: which ls 出现下面的信息,是ls指令的详情,说明ls指令是存在的 alias ls='ls --color=auto' /bin/ls eg: which zs 出现下面的信息,说明zs指令是不存在的 /usr/bin/which: no zs in (/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/ch/bin)
命令路径:/usr/bin/whereis 执行权限:所有用户 作用:搜索命令所在目录 配置文件所在目录 及帮助文档路径 eg: which passwd 和 whereis passwd eg: 查看/etc/passwd配置文件的帮助,就用 man 5 passwd
作用:用于查看Linux文件系统的状态信息,显示各个分区的容量、已使用量、未使用量及挂载点等信息。看剩余空间 语法:df \[-hkam][挂载点] -h(human-readable)根据磁盘空间和使用情况 以易读的方式显示 KB,MB,GB等 -k 以KB 为单位显示各分区的信息,默认 -m 以MB为单位显示信息 -a 显示所有分区包括大小为0 的分区
作用:用于查看文件或目录的大小(磁盘使用空间) 语法:du \[-ahs][文件名目录] -a 显示子文件的大小 -h 以易读的方式显示 KB,MB,GB等 -s summarize 统计总占有量 eg: du -a(all) /home 显示/home 目录下每个子文件的大小,默认单位为kb eg: du -h /home 以K,M,G为单位显示/home 文件夹下各个子目录的大小 eg: du -sh /home 以常用单位(K,M,G)为单位显示/home 目录的总大小 -s summarize df命令和du命令的区别: df命令是从文件系统考虑的,不仅考虑文件占用的空间,还要统计被命令或者程序占用的空间。 du命令面向文件,只计算文件或目录占用的空间。 eg: 执行下面的命令查看区别 df –h / du –sh /
作用:显示系统内存的使用情况,包括物理内存、交换内存(swap)和内核缓冲区内存。 语法: free [-kmg] 选项: -k: 以KB为单位显示,默认就是以KB为单位显示 -m: 以MB为单位显示 -g: 以GB为单位显示 清理缓存命令: echo 1 > /proc/sys/vm/drop_caches
英文:GNU zip 命令路径:/bin/gzip 执行权限:所有用户 作用:压缩(解压)文件,压缩文件后缀为.gz gzip只能压缩文件,不能压缩目录;不保留原文件 语法:gzip 文件 -d将压缩文件解压(decompress) 解压使用gzip –d或者 gunzip
命令路径:/usr/bin/bzip2 执行权限:所有用户 作用:压缩(解压)文件,压缩文件后缀为.bz2 语法:bzip2 \[-k][文件] -k: 产生压缩文件后保留原文件(压缩比高) -d: 解压缩的参数(decompress) 解压使用bzip2 –d或者 bunzip2
命令路径:/usr/bin/zip 执行权限:所有用户 作用: 压缩(解压)文件,压缩文件后缀为.zip,保留源文件 语法: zip 选项 [压缩后文件名称] [文件或目录] -r 压缩目录 eg:zip services.zip /etc/services 压缩文件 zip -r test.zip /test 压缩目录 如果不加-r选项,压缩后的文件没有数据。 解压使用unzip ,注意如果解压时,已经存在与压缩文件同名的目录名,默认不会进行覆盖,如果选择Y,会进行覆盖
命令路径:/bin/tar 执行权限:所有用户 作用:文件、目录打(解)包 语法:tar [-zcf] 压缩后文件名 文件或目录 -c 建立一个压缩文件的参数指令(create),后缀是.tar -x 解开一个压缩文件的参数指令(extract) -z 以gzip命令压缩/解压缩 -j 以bzip2命令压缩/解压缩 -v 压缩的过程中显示文件(verbose) -f file 指定文件名,必选项
1) 简单理解
tar –cf tar –xf 单独的打包 ,解包 gzip bzip2 打包之后,进行压缩 tar –zcvf tar -zxvf 一步到位 tar -z 以gzip打包目录并压缩 文件格式.tar.gz(.tgz) tar -j 以bzip2打包目录并压缩 文件格式.tar.bz2
2) 示例
eg: tar -zcvf dir1.tar.gz dir1 使用gzip将目录dir1压缩成一个打包并压缩文件dir1.tar.gz eg: tar -zxvf dir1.tar.gz -C(大写的) /root 解压到指定的/root目录 eg: tar -cvf bak.tar . 将当前目录的文件打包为bak.tar eg: tar -xvPf bak.tar 解压到当前目录,默认是相对路径,P意思是支持绝对路径 eg: tar -cvPf bak.tar /a/b 将/a/b路径压缩成bak.tar eg: tar -zcvf bak.tar.gz bak.tar 或 gzip bak.tar 使用gzip将打包文件bak.tar压缩为bak.tar.gz eg: tar -jcvf bak.tar.bz2 bak.tar 或 bzip2 bak.tar 使用bzip2将打包文件bak.tar压缩为bak.tar.bz2 eg: tar -rvf bak.tar /etc/password 将/etc/password追加文件到bak.tar中 eg: tar -cjvf test.tar.bz2 test 生成test.tar.bz2的压缩文件 eg: tar -xjf test.tar.bz2 解压
3) 最常用: tar + gzip
tar –zcvf 压缩 tar –zxvf 解压 补充:源文件是保留的,不会被删除
1) date命令是显示或设置系统时间与日期。 2) 查看系统时间直接使用 date 3) 以自定义的方式显示系统时间: date +'%Y-%m-%d %H:%M:%S' 注意:+与字符串之间不能有空格,与date之间要有空格 4) 设置时间 eg: date -s "2015-5-8 19:48:00" 5) 同步到bios,重启之后才能继续生效 eg: hwclock -w
语法:shutdown [选项] 时间 选项: -c: 取消前一个关机命令 -h: 关机 -r: 重启 eg: shutdown -h now 立即关机 shutdown -h 20:30 定时关机 其他关机命令: halt poweroff init 0
eg: reboot 重启系统 reboot -h now 立即重启
注意:生产环境中,关机命令和重启命令谨慎执行。
linux有七种执行等级: init 0:停机 init 1:单用户形式,只root进行维护 init 2:多用户,不能使用net file system init 3:完全多用户 init 5:图形化 init 4:安全模式 init 6:重启
uname -r 查看系统版本信息 basename a/b/c/test.txt 显示:test.txt 查看命令中的名字 dirname a/b/c/test.txt 显示: a/b/c/ 查看命令中的路径
善于查看man help等帮助文档 利用好Tab键 自动补全 掌握好一些快捷键 ctrl + c(停止当前进程) ctrl + z 挂起当前进程,放后台 ctrl + r(查看命令历史) history ctrl + l(清屏,与clear命令作用相同) 对当前命令行的操作: 方向箭头 上 下 可以查看执行过的命令并再次使用 ctrl + a 行首 ctrl + e 行尾 ctrl+d 清除当前的字符 ctrl + k 清除光标后面的内容 ctrl+ w 清除光标前面的单词