🎈个人主页:靓仔很忙i
💻B 站主页:👉B站👈
🎉欢迎 👍点赞✍评论⭐收藏
🤗收录专栏:Linux
🤝希望本文对您有所裨益,如有不足之处,欢迎在评论区提出指正,让我们共同学习、交流进步!
文件和目录
顶级目录
Linux世界里,一切皆文件。
/bin
: 存放经常使用的命令。/usr/bin、/usr/local/bin的指针
sbin:管理徐使用的程序。/usr/sbin、/usr/local/sbin
/home
: 普通用户的主目录,每个用户都有自己的一个目录
/root
:管理员目录
/usr --> Program File(系统默认软件安装目录)
/opt --> 自定义软件安装的目录(例如数据库)
/user/local
--> 通过源码编译方式的安装程序
/var
--> 存放日志文件(不断扩充的文件)
/boot
--> linux启动的核心文件
/proc --> 系统内存的映射
/srv --> 服务启动后的数据
/sys --> 内核
/tmp --> 存储临时文件
/dev --> windows的设备管理器
/media
--> 识别的挂载设备,如u盘,光驱
/mnt
--> 挂载的外部存储系统
配置文件
/etc目录:
包含很多文件.许多网络配置文件也在/etc 中. 这个目录一般用来存放程序所需的整个文件系统的配置文件.
/etc/passwd:
用户数据库,其中的域给出了用户名、真实姓名、家目录、加密的口令和用户的其他信息.
/etc/group:
类似/etc/passwd ,但说明的不是用户而是组.
/etc/shadow:
是在安装了影子(shadow)口令软件的系统上的影子口令文件。影子口令文件将/etc/passwd 文件中的加密口令移动到/etc/shadow中,而后者只对超级用户root可读。这使破译口令更困难,以此增加系统的安全性。
/etc/profile:
/etc/profile文件的改变会涉及到系统的环境,也就是有关Linux环境变量的东西
文件指令
ls (查看文件和目录)
cp (复制命令)
mv (移动文件与目录、文件重命名)
查看文件内容的命令
cat 由第一行开始显示内容,并将所有内容输出
tac 从最后一行倒序显示内容,并将所有内容输出
more 根据窗口大小,一页一页的现实文件内容
less 和more类似,但其优点可以往前翻页,而且进行可以搜索字符
head 只显示头几行
tail 只显示最后几行
tailf 类似于tail -f 该参数用于监视File文件增长。
vim
退出:q
退出并保存:qw
退出不保存:q!拷贝当前行:yy
向下拷贝n行:nyy (n为数字)
粘贴:p
删除当前行:ddgg:首行
G:末行:set nu 显示行号
:set nonu 取消显示行号:行号 跳到指定的行号文件中查找 :/关键字 回车查找 n查找下一个
查找和压缩
查找
find
locate
gerp
压缩
gzip/gunzip
zip/unzip
tar
用户和组
用户
useradd
id [option] [USERNAME] 查看用户信息
userdel
usermod
passwd [USERNAME] -d 可删除用户密码
组
groupadd
groupmod
groupdel
gpasswd
文件权限
chmod
chgrp
网络
netstat 查看本地启动服务和外界服务的连接
arp ip地址解析为mac地址
Tracert 检查源和目的之间网络是否故障
pathping
route
netsh
nlookup
net
常用指令
命令行直接连接 ssh root@xxx.xxx.xxx.xx查看端口占用:netstat -lnp|grep 80
查看内存占用:free -h
查看磁盘占用:df -h实时查看网络变化: watch -d netstat -anlp nohup启动jar:nohup java -jar guns.jar --server.port=8080 &
查看程序是否启动及程序相应的进程id: ps -ef|grep 进程名(java)
杀死进程:kill -9 24204tomcat日志查看:tailf -100f catalina.out
搜索:find 搜索范围 -name 文件名tree命令:https://juejin.im/post/5c10b77ef265da614f702a3d
查看文件或文件夹的磁盘使用空间:du -h --max-depth=1 your_dest_dir
xshell实现文件上传和下载
安装软件:yum install lrzsz -y
检验软件:rpm -qa|grep lrzsz
上传:rz
上传并覆盖原文件:rz -y
下载文件: sz {文件}
压缩、解压
压缩文件:
# touch a.c # tar -czvf test.tar.gz a.c //压缩 a.c文件为test.tar.gz列出压缩文件内容:
# tar -tzvf test.tar.gz解压zip文件
# tar -xzvf test.tar.gz
Linux 命令提示符显示当前完整路径
问题:linux下,命令行显示路径仅最后一个文件名,非常不方便,想显示完整路径。 环境背景:linux,无root权限,可sudo(为了服务器安全,一般只给管理员root账号和密码,普通账号仅sudo权限) 方法:修改环境变量PS1,vi编辑/etc/profile文件在最后加上一行语句。 命令行提示符完全显示完整的工作目录名称: export PS1=‘[\u@\w]$’
修改完成后,执行: source /etc/profile 使配置生效即可。
关于PS1各个字段的含义如下:\d :代表日期,格式为weekday month date,例如:”Mon Aug 1”\H :完整的主机名称。例如:我的机器名称为:fc4.linux,则这个名称就是fc4.linux\h :仅取主机的第一个名字,如上例,则为fc4,.linux则被省略\t :显示时间为24小时格式,如:HH:MM:SS\T :显示时间为12小时格式\A :显示时间为24小时格式:HH:MM\u :当前用户的账号名称\v :BASH的版本信息\w :完整的工作目录名称。家目录会以 ~代替\W :利用basename取得工作目录名称,所以只会列出最后一个目录# :下达的第几个命令$ :提示字符,如果是root时,提示符为:# ,普通用户则为:$
提取文件中的某行
cat IPTV_ScheduleInfo_01_20181224.dat |grep ‘2018122[1,2,3,4]’|wc -l >> IPTV_ScheduleInfo_01_20181221-24.txt
获取文件有多少行
docker ps|wc -l
获取某列
docker ps|awk -F " " ‘{print $NF}’
docker ps|awk -F " " ‘{print $1}’
docker ps --format “{{.Names}}”