Linux入门篇
Linux常用命令
在学习命令之前,首先要清楚 相对路劲与绝对路径.Linux中,任何文件路径都是从 / 根目录开始,那么从根目录开始记录的文件的路径就叫绝对路径,而相对路径则表示基于你(这里指文件)当前位置所描述的路径叫相对路径
例1:[cd /usr/local/devlop/jdk/] 这里则表示的就是绝对路径.
例2: 当执行 [cd /usr/local/devlop/jdk/] 指令后,当前位置是在jdk目录中,此时想在devlop目录中创建一个新的名叫Tomcat的目录,可以是用 [mkdir ../Tomcat] 指令,此时指令则用的就是相对路径
补充
- ./ 表示当前目录
- ../ 表示上级目录
- pwd 显示当前所在位置
- touch a.txt 创建文件a.txt
文件目录操作(ls、cd、cat、more、tail、mkdir、rm)
ls
- ls:显示指定目录下的内容
- ls -a:显示目录下所有的文件及目录(包含.开头的隐藏文件)
- ls -l:显示目录下所有的文件及目录(包含文件名,文件大小,创建时间,文件类型(-开头表示文件,d开头表示文件夹))
- ll:ls -l的简写格式
- ls -al aaa/ 查看aaa文件夹下的所有文件及目录
cd
- cd [dirname] :表示进入到指定目录
- cd ~:进入当前用户home目录
- cd ..:进入到当前目录的上级目录
- cd ../.. 进入到当前目录的上上级目录
- cd /usr/local 表示进入到usr/local目录
cat、more、tail
- cat :查看文件内容(一般用于查看小文件) 例:cat aaa/bbb.txt
- more:以分页的形式显示文件内容(一般用于查看大文件) 例:more aaa/bbb.txt
操作说明:
1 回车键:向下滚动一行
2 空格键:向下滚动一屏
3 b:返回上一屏
4 q或者Ctrl+C:退出more - tail:查看文件尾部内容 例:tail -100f a.txt(查询a.txt文件尾部100行内容)
mkdir、rm
-
mkdir:新建文件或文件夹
例:
1 mkdir aaa 创建aaa文件目录
2 mkdir -p aaa/bbb/ccc 创建多级目录
3 mkdir aaa.txt bbb.java 创建多个文件 -
rmdir: 删除目录
1 rmdir ccc:删除ccc文件目录(要求删除的目录为空目录)
2 rmdir -f ccc: 删除ccc文件目录(强制删除目录)
3 rmdir -p ccc/ddd/eee :删除多级目录 -
rm :
1 rm -r ccc/ :删除ccc文件目录和目录中的所有文件(删除时需要确认(y是,n否))
2 rm -rf ccc/ :删除ccc文件目录和目录中的所有文件(无需确认)
3 rm -f a.txt :直接强制删除a文件(无需确认)
** 4:rm -rf /*:无需确认强制删除根路径下所有的文件及文件目录(三年起步!慎用!) **
拷贝移动(cp、mv)
cp
- cp a.txt bbb/ :a.txt复制到bbb目录中
- cp a.txt ./b.txt : a.txt复制到当前目录,并改名为b.txt
- cp -r a/ ./b/:将a目录和目录下所有文件复制到b目录下
- cp -r a/* ./b/ :将a目录下所有文件复制到b目录下
mv
- mv a.txt b/ : 将a文件移动到b文件目录下
- mv a.txt b.txt : 将a.txt文件改名为b.txt
- mv a.txt b/b.txt :将a.txt文件移动到b文件目录下并改名为b.txt
- mv a/ b/ :如果b文件目录不存在,将a目录改名为b
- mv a/ b/ :如果b文件目录存在,将a文件目录移动到b文件目录下
打包压缩(tar)
- tar -zcvf a.tar.gz ./* 将当前目录下的所有文件打包并压缩,名字为:a.tar.gz
- tar -zxvf a.tar.gz 将a.tar.gz文件进行解压,解压的文件放在当前目录
- tar -cvf a.tar ./* 将当前目录下的所有文件打包,名字为:a.tar
- tar -xvf a.tar 将a.tar文件进行解包,解包的文件放在当前目录
注:
z :表示压缩或解压文件
c :表示创建新的包文件
x :还远包文件(所以解压时需要用到x)
v :显示执行命令的过程
f :指定文件名
所以zcvf表示打包并压缩,打包压缩前文件大小大于打包压缩后文件大小,而cvf表示只打包,打包前文件大小等于打包后文件大小
文本编辑(vim)
1 使用指令安装vim :yum install vim, 安装过程中一直y确认即可
2 vim的使用
2.1 vim a.txt 查看文件,进入命令模式
2.2 输入 i,a,o进入插入模式,在插入模式中可以对a.txt文件进行编辑,编辑完成后输入ESC退出编辑
2.3 当插入模式退出后,便进入底行模式,输入wq保存,完成编辑
2.3 三种模式的指令
- 命令模式的指令
- 在命令模式下可以使用 /(xxx)+enter 去搜索想要编辑的内容(xxx表示内容),N可以继续搜索下一个与xxx相关的内容.例如:/pass+Enter ,表示模糊匹配pass相关的文本内容
- gg 定位到文本内容的第一行
- G 定位到文本内容的最后一行
- dd 删除光标所在行的数据
- (n)dd 删除当前光标所在行及之后的n行数据
- u 撤销操作
- shift+zz 保存并退出
- i 或 a 或 o 进入插入模式
- : 进入底层模式
- 插入模式的指令
- 插入模式一般用户编辑文件
- ESC 回到命令模式
- 底层模式的指令
- :wq 保存并退出
- :q! 不保存退出
- :set nu 显示行号
- :set nonu 取消行号显示
- :n 定位到第n行(如 :10 就是定位到第10行)
查找(find、grep)
find:查找文件或文件目录
- find . –name "*.java" 在当前目录及其子目录下查找.java结尾文件
- find /itcast -name "*.java" 在/itcast目录及其子目录下查找.java结尾的文件
grep:查找指定的文本内容
- grep Hello HelloWorld.java:查找HelloWorld.java文件中出现的Hello字符串的位置
- grep hello *.java:查找当前目录中所有.java结尾的文件中包含hello字符串的位置
- 一般与tail一起使用:tail -100f a.txt | grep 'xxxx'
补充命令
【用户管理相关命令】
- 添加新用户并且设置密码(要求root用户权限操作): 新增的用户会将数据保存到 ”/home/用户名“ 目录下:
useradd zhangsan
passwd zhangsan - 修改用户名:usermod -l 新名 原名
- 删除用户:userdel zhangsan
- 强制删除用户,并且删除用户相关文件 :userdel -rf zhangsan
【时间相关命令】
- 显示当前系统时间 :date
- 设置当前系统时间 :date -s "2022-11-11 11:11:11"
【权限不足时,切换用户】
- 切换到root用户:su root
【查看用户信息相关命令】
- 查看当前用户名::logname
- 查看当前登录的用户有哪些: who
【查看进程、杀死相关命令】
- 实时查看进程状态(类似任务管理器):top
- 先通过ps 查出进程id
ps -ef - ps grep查出具体进程:
ps -ef | grep 进程名
ps -ef | grep java - 再通过 kill杀死进程, -9代表强制杀死
kill -9 11234
【关机、重启命令】
- 关机:shutdown
- 重启:reboot