ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

Linux基础命令——(1)

2021-11-29 19:01:55  阅读:124  来源: 互联网

标签:bin 文件 tar eg 基础 命令 Linux 目录


一、环境准备

环境:VMware下的CentOS

安装VMware与CentOS

https://blog.csdn.net/m0_62718093/article/details/121616250icon-default.png?t=LA92https://blog.csdn.net/m0_62718093/article/details/121616250二、基础命令

2.1 命令格式的说明

命令格式:命令  \[-选项][参数]  参数
​
eg: ls  -la  /usr
​
说明: 
​
大部分命令遵从该格式
​
多个选项时,可以一起写   
​
eg: ls –l –a  ls –la
​
简化选项与完整选项(注:并非所有选项都可使用完整选项)     
​
eg: ls –all   ls –a
​
帮助命令:(相当于命令说明书)

2.2 帮助命令

2.2.1 man

英文:manual   命令路径:/usr/bin/man       执行权限:所有用户
​
作用:获取命令或配置文件的帮助信息
​
语法:man [命令/配置文件]
​
eg:man ls    man  services   
​
(查看配置文件时,不需要配置文件的绝对路径,只需要文件名即可)
​
调用的是more命令来浏览帮助文档,按空格翻下一页,按回车翻下一行,按q退出。

2.2.2 help

help  查看shell内置命令的帮助信息
​
eg: help cd
​
命令名 --help
​
命令名 --help 列举该命令的常用选项
​
eg: cp --help

2.3 文件处理命令

2.3.1 cd

英文:change directory 命令路径:内部命令   执行权限:所有用户
​
cd : 切换工作目录
​
cd -: 回到上一次的操作所在位置
​
cd ~: 回到用户家目录
​
cd ./ : 当前目录
​
cd ../: 回到上一级目录
​
cd   : 回到用户家目录

2.3.2 ls

查看目录   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等)

2.3.3 pwd

英文:print working directory  命令路径:/bin/pwd       执行权限:所有用户
​
作用:显示当前工作目录
​
linux下的路径
​
pwd: 打印当前工作目录(全目录)
​
绝对路径: 以根目录为开始的目录
​
相对路径: 相对当前目录的路径
​
语法: pwd [-LP]   
​
eg: cd /etc/init.d
​
pwd [-P]

2.3.4 mkdir

英文:make directories 命令路径:/bin/mkdir 执行权限:所有用户
​
作用:创建新目录
​
语法:mkdir [-p] 目录名
​
-p 父目录不存在情况下先生成父目录 (parents)
​
eg: mkdir linux/test  如果目录linux不存在,则报错,使用参数-p即可自动创建父目录

2.3.5 touch

命令路径:/bin/touch     执行权限:所有用户
​
作用:创建空文件或更新已存在文件的时间      
​
语法:touch 文件名    
​
eg: touch  a.txt  b.txt   touch {a.txt,b.txt}    同时创建多个文件,注意:后面{}中,中间不能有空格
​
eg: touch "program files"  创建带空格的文件 
​
注意:生产环境中,文件名,一定不要加空格

2.3.6 echo

命令路径:/bin/echo  执行权限:所有用户
​
作用:查看某些环境变量/给文件增加内容
​
语法:echo '字符串'  > 文件名   
​
eg: echo  $PWD     查看当前的路径
​
echo  'haha'  >  test1.txt    将字符串haha添加到test1.txt里面,注意;会将文件原来的内容覆盖
​
echo 'haha'  >> test1.txt    将字符串haha追加到test1.txt中,不会覆盖原来的内容

2.3.7 cp

英文:copy     命令路径:/bin/cp        执行权限:所有用户
​
作用:复制文件或目录
​
语法:cp [–rp]  源文件或目录  目的目录
​
-r -R recursive 递归处理,复制目录
​
-p 保留文件属性 (原文件的时间不变)
​
eg:
​
1.相对路径  cp –R /etc/* .  将etc下的全部内容递归拷贝到当前的目录下 
​
2.绝对路径  cp –R **/**ect/service  /root/test/aa/bb

2.3.8 mv

英文:move     命令路径:/bin/mv        执行权限:所有用户
​
作用:移动文件或目录、文件或目录改名
​
语法:mv 源文件或目录          目的目录

2.3.9 rm

英文:remove   命令路径:/bin/rm        执行权限:所有用户
​
作用:删除文件
​
语法: rm [-rf] 文件或目录
​
-r(recursive)删除目录,同时删除该目录下的所有文件
​
-f(force) 强制删除文件或目录 即使原档案属性设为唯读,亦直接删除,无需逐一确认
​
注意:工作中,谨慎使用rm –rf 命令。

2.3.10 ln

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 

2.4 查看命令

2.4.1 cat

英文:concatenate  命令路径:/bin/cat       执行权限:所有用户
​
作用:显示文件内容,直接显示全部内容
​
语法:cat \[-n][文件名]
​
-A  显示所有内容,包括隐藏的字符   
​
-n  显示行号     
​
eg:cat /etc/services

2.4.2 more

命令路径:/bin/more      执行权限:所有用户
​
作用:分页显示文件内容
​
语法:more [文件名]
​
空格或f   显示下一页
​
enter键   显示下一行
​
q或Q  退出
​
相关指令:less

2.4.3 head

命令路径:/usr/bin/head      执行权限:所有用户
​
作用:查看文件前几行(默认10行)
​
语法:head [文件名]
​
-n 指定行数 
​
eg:head -20 /etc/services   head –n 3 /etc/services

2.4.4 tail

命令路径:/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文件中,并进行内容的追加

2.5 搜索查找命令

2.5.1 find

命令路径:/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查找的基本原则:
​
占用最少的系统资源,即查询范围最小,查询条件最精准
​
注意: 如果明确知道查找的文件在哪一个目录,就直接对指定目录查找,不查找根目录/ 

2.5.2 grep

命令路径:/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

2.5.3 which

命令路径:/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)

2.5.4 whereis

命令路径:/usr/bin/whereis       执行权限:所有用户
​
作用:搜索命令所在目录 配置文件所在目录  及帮助文档路径      
​
eg: which passwd    和   whereis  passwd   
​
eg: 查看/etc/passwd配置文件的帮助,就用  man 5 passwd

2.6 磁盘的操作命令

2.6.1 df命令

作用:用于查看Linux文件系统的状态信息,显示各个分区的容量、已使用量、未使用量及挂载点等信息。看剩余空间
​
语法:df \[-hkam][挂载点]
​
-h(human-readable)根据磁盘空间和使用情况 以易读的方式显示 KB,MB,GB等
​
-k   以KB 为单位显示各分区的信息,默认
​
-m  以MB为单位显示信息
​
-a   显示所有分区包括大小为0 的分区

2.6.2 du命令

作用:用于查看文件或目录的大小(磁盘使用空间)
​
语法: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 /

2.6.3 free

作用:显示系统内存的使用情况,包括物理内存、交换内存(swap)和内核缓冲区内存。
​
语法: free [-kmg]
​
选项:
​
-k:   以KB为单位显示,默认就是以KB为单位显示
​
-m:  以MB为单位显示
​
-g:    以GB为单位显示
​
清理缓存命令:
​
echo 1 > /proc/sys/vm/drop_caches

2.7 打包压缩命令

2.7.1 gzip

英文:GNU zip  命令路径:/bin/gzip      执行权限:所有用户
​
作用:压缩(解压)文件,压缩文件后缀为.gz    
​
gzip只能压缩文件,不能压缩目录;不保留原文件
​
语法:gzip 文件
​
-d将压缩文件解压(decompress)
​
解压使用gzip –d或者 gunzip

2.7.2 bzip2

命令路径:/usr/bin/bzip2     执行权限:所有用户
​
作用:压缩(解压)文件,压缩文件后缀为.bz2
​
语法:bzip2 \[-k][文件]   
​
-k: 产生压缩文件后保留原文件(压缩比高)
​
-d: 解压缩的参数(decompress)
​
解压使用bzip2 –d或者 bunzip2

2.7.3 zip

命令路径:/usr/bin/zip       执行权限:所有用户
​
作用: 压缩(解压)文件,压缩文件后缀为.zip,保留源文件
​
语法: zip 选项 [压缩后文件名称] [文件或目录]   
​
-r 压缩目录
​
eg:zip services.zip /etc/services  压缩文件
​
zip -r test.zip  /test  压缩目录
​
如果不加-r选项,压缩后的文件没有数据。
​
解压使用unzip ,注意如果解压时,已经存在与压缩文件同名的目录名,默认不会进行覆盖,如果选择Y,会进行覆盖

2.7.4 tar

命令路径:/bin/tar   执行权限:所有用户
​
作用:文件、目录打(解)包
​
语法:tar [-zcf] 压缩后文件名  文件或目录
​
-c 建立一个压缩文件的参数指令(create),后缀是.tar
​
-x 解开一个压缩文件的参数指令(extract)
​
-z 以gzip命令压缩/解压缩  
​
-j  以bzip2命令压缩/解压缩 
​
-v 压缩的过程中显示文件(verbose)
​
-f file 指定文件名,必选项

2.7.5 示例

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  解压
​
补充:源文件是保留的,不会被删除

2.8 date

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

2.9 系统关机命令

2.9.1 关机命令:shutdown

语法:shutdown  [选项] 时间    
选项: 
-c: 取消前一个关机命令   
-h: 关机   
-r: 重启
​
eg: 
shutdown -h  now  立即关机     
shutdown  -h  20:30   定时关机
​
其他关机命令:
halt     
poweroff     
init 0

2.9.2 重启命令:reboot

eg: reboot 重启系统    
​
reboot -h now    立即重启

2.9.3 重启命令:init 6

注意:生产环境中,关机命令和重启命令谨慎执行。

2.9.4 执行等级

linux有七种执行等级:
init 0:停机
init 1:单用户形式,只root进行维护
init 2:多用户,不能使用net file system
init 3:完全多用户
init 5:图形化
init 4:安全模式
init 6:重启 

2.9.5 其他命令

uname -r    查看系统版本信息    
basename     a/b/c/test.txt     显示:test.txt   查看命令中的名字     
dirname       a/b/c/test.txt        显示: a/b/c/  查看命令中的路径     

2.10 Linux的快捷键命令

善于查看man help等帮助文档 
​
利用好Tab键  自动补全
​
掌握好一些快捷键
​
ctrl + c(停止当前进程)
​
ctrl + z  挂起当前进程,放后台
​
ctrl + r(查看命令历史) history
​
ctrl + l(清屏,与clear命令作用相同)
​
对当前命令行的操作:
​
方向箭头  上 下 可以查看执行过的命令并再次使用
​
ctrl + a  行首 ctrl + e 行尾  ctrl+d  清除当前的字符
​
ctrl + k  清除光标后面的内容   ctrl+ w 清除光标前面的单词

标签:bin,文件,tar,eg,基础,命令,Linux,目录
来源: https://blog.csdn.net/m0_62718093/article/details/121616598

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有