Linux(目录结构和常规命令)

目录结构

/bin 存放二进制可执行文件(ls,cat,mkdir等),常用命令一般都在这里。

/etc存放系统管理和配置文件

/home 存放所有用户文件的根目录,是用户主目录的基点,比如用户user的主目录就是/home/user,可以用~user表示

/usr 用于存放系统应用程序,比较重要的目录/usr/local本地系统管理员软件安装目录(安装系统级的应用)。这是最庞大的目录,要用到的应用程序和文件几乎都在这个目录。/usr/x11r6存放x window的目录
/usr/bin众多的应用程序
/usr/sbin 超级用户的一些管理程序
/usr/doc Linux文档
/usr/include linux下开发和编译应用程序所需要的头文件
/usr/lib常用的动态链接库和软件包的配置文件
/usr/man 帮助文档
/usr/src源代码,linux内核的源代码就放在/usr/src/linux里
/usr/local/bin 本地增加的命令
/usr/local/lib本地增加的库

/opt 额外安装的可选应用程序包所放置的位置。一般情况下,我们可以把tomcat等都安装到这里。

/proc虚拟文件系统目录,是系统内存的映射。可直接访问这个目录来获取系统信息。

/root 超级用户(系统管理员)的主目录

/sbin 存放二进制可执行文件,只有root才能访问。这里存放的是系统管理员使用的系统级别的管理命令和程序。如ifconfig等。

/dev用于存放设备文件。

/mnt系统管理员安装临时文件系统的安装点,系统提供这个目录是让用户临时挂载其他的文件系统。
/boot 存放用于系统引导时使用的各种文件

/lib存放跟文件系统中的程序运行所需要的共享库及内核模块。共享库又叫动态链接共享库,作用类似windows里的.d文件,存放了根文件系统程序运行所需的共享文件。

/tmp用于存放各种临时文件,是公用的临时文件存储点。

/Nar用于存放运行时需要改变数据的文件,也是某些大文件的溢出区,比方说各种服务的日志文件(系统启动日志等。)等。

/lost+found 这个目录平时是空的,系统非正常关机而留下“无家可归”的文件(windows下叫什么.chk)就在这里

在这里插入图片描述

常用命令

系统信息

who am i :查看当前使用的终端
who 或 w : 查看所有终端
uname -m :显示机器的处理器架构(如x86_64)
cat /proc/version :查看linux版本信息
uname -r :显示正在使用的内核版本
lsb_release -a :查看系统发行版本(如CentOS7)
rpm -qa | grep kernel-devel :查看kernel-devel版本(安装软件时编译内核用,故需要保持内核版本一致性)
yum install -y “kernel-devel-uname-r == $(uname -r)”:安装和Linux内核版本匹配的kernel-devel
date :显示系统日期 (date +%Y/%m/%d : 显示效果如2018/01/01)
date 070314592018.00 :设置时间(格式为月日时分年.秒 )
clock -w :将时间修改保存到 BIOS
cal 2018 :显示2018年的日历表
clear :清空命令行
ifconfig :显示或设置网卡(查ip等)(类似windows中ipconfig)
ping -c 3 www.baidu.com :测试百度与本机的连接情况( -c 3表示测试3次)
cat /proc/cpuinfo :显示CPU的信息
cat /proc/cpuinfo| grep “physical id”| sort| uniq| wc -l :查看物理CPU个数
cat /proc/cpuinfo| grep “cpu cores”| uniq :查看每个物理CPU的核数
cat /proc/cpuinfo| grep “processor”| wc -l :查看逻辑CPU个数即线程数

系统性能

top :动态实时显示cpu、内存、进程等使用情况(类似windows下的任务管理器)
top -d 2 -p 7427 :-d为画面更新的秒数,默认5秒,-p为指定进程pid的信息
vmstat 2 10 :每隔2秒采集一次服务器状态,采集10次(查看内存、io读写状态、cpu)
free -h :查看系统内存及虚拟内存使用情况
df -h :显示磁盘的空间使用情况
iostat :可查io读写、cpu使用情况
sar -u 3 5 :查看cpu使用情况(3秒一次,共5次)
sar -d 2 3 :评估磁盘性能
ps aux|grep firefox :获取火狐的进程号(PID)(可查看进程占用cpu、内存百分比及进程触发指令的路径)
kill -9 进程号 :强制杀死进程
systemctl :查看正在运行的服务

文件和目录

cd:是Change Directory的缩写,用来切换工作目录,语法:cd [相对或绝对路径或特殊符号]

cd :进入该用户的主目录 ~(root用户为/root,其他用户为/home/用户名)
cd … :返回上一级目录(注意要空格)
cd - :返回上次所在目录
cd / :返回根目录 (绝对路径)
cd ./目录1/目录2 :进入当前目录下的子目录(相对路径)
pwd :显示工作路径(Print Working Directory 的缩写)

​ls:是List的缩写,用于列出目录下的文件,语法:ls [选项][目录或文件名]

ls -a :列出文件下所有的文件,包括以“.“开头的隐藏文件
*ls -lh .log :列出文件的详细信息(.log结尾,*为通配符代表任意多个字符)
file 文件或目录 :显示文件的类型(目录、text、zip、shell脚本等)

mkdir dir1 :创建目录(dir1)(mkdir为make directory的缩写)
mkdir -p ./dir1/dir2 :递归创建目录(-p:父目录不存在时,同时建立)
touch a.txt :创建文件a.txt

​rm:可以删除一个目录中的一个或多个文件或目录,也可以将某个目录及其下属的所有文件及其子目录均删除掉; 语法:rm (选项)(参数)(注:如果参数中含有目录,则必须加上-r选项);
rm 文件 :删除文件
rm -r 目录或文件 :删除目录(及目录下所有文件)(非空也可以)
rm -rf 目录或文件 :强制删除,如:rm -rf * 为删除当前目录下所有文件

​mv:是move的缩写,可以用来剪切移动文件、目录或者将文件改名;
语法:mv 源文件 目标文件(改名)或目录(移动);

mv a b :移动或者重命名一个文件或者目录(存在即移动目录或覆盖文件,不存在即改名)
mv /opt/git/g /opt/a :移动g到opt目录下并改名为a(a目录不存在,若存在则为移动g到a目录下)
mv -t ./test a.txt b.txt :移动多个文件到某目录下

​cp:复制文件或目录;cp命令可以将单个或多个文件复制到一个已经存在的目录下;
常用:cp -ai 文件或目录 目标目录;

cp -ai /opt/abc /opt/git/ :复制abc目录(或文件)到git目录下(选项a表示文件的属性也复制、目录下所有文件都复制;i表示覆盖前询问)

​ln:link的缩写,用于建立硬(软)链接,常用于软件安装时建软链接(类似快捷方式)到PATH;
语法:ln [-s] 源文件 目标文件

ln -s /opt/a.txt /opt/git/ :对文件创建软链接(快捷方式不改名还是a.txt)
ln -s /opt/a.txt /opt/git/b :(快捷方式改名为b)(下面的一样可以改名)
ln -s /opt/mulu /opt/git/ :对目录创建软链接
ln /opt/a.txt /opt/git/ :对文件创建硬链接

压缩、解压和打包备份

单纯tar仅为打包(多个文件包成一个大文件),加上参数-j(bzip2格式.bz2)、-z(gzip格式.gz)可以备份、压缩(-c)、解压(-x),备份一般比压缩多加参数-p(保留原本文件的权限与属性),-C可以指定解压到特定目录;bzip2、gzip只能对单一文件压缩;

file 文件名 :查文件类型(可看是用哪一种方式压缩的)

tar -zxvf a.tar.gz -C ./test :解压tar.gz到当前目录下的test目录
tar -zcvf /opt/c.tar.gz ./a/ :压缩tar.gz(把当前目录下的a目录及目录下所有文件压缩为 /opt/目录下的c.tar.gz,这样tar -zxvf c.tar.gz解压出来带有目录a)

tar -jxvf a.tar.bz2 :解压tar.bz2(到当前目录)
tar -jcvf c.tar.bz2 ./a/ :压缩tar.bz2(把当前目录下的a目录及目录下所有文件压缩到当前目录下为c.tar.gz2)

unzip a.zip :解压zip(到当前目录)
unzip -o mdmtest.war -d /opt/mdm :推荐使用unzip解压war包(-o覆盖原有文件,-d指定文件解压后存储的目录)
zip -r c.zip ./a/ :压缩zip(把当前目录下的a目录及目录下所有文件压缩到当前目录下为c.zip

bzip2 -k file1 : 压缩一个 ‘file1’ 的文件(-k表示保留源文件)(bzip2格式,比gzip好)
bzip2 -d -k file1.bz2 : 解压一个叫做 'file1.bz2’的文件

gzip file1 : 压缩一个叫做 'file1’的文件(gzip格式)(不能保留源文件)
gzip -9 file1 : 最大程度压缩
gzip -d file1.gz : 解压缩一个叫做 'file1’的文件

软件安装

尽量用yum源(apt-get)安装,不行就rpm、deb包安装,能不手动编译的就不要手动编译;
dpkg只能安装已经下载到本地机器上的deb包. apt-get能在线下载并安装deb包,能更新系统,且还能自动处理包与包之间的依赖问题,这个是dpkg工具所不具备的;
rpm 只能安装已经下载到本地机器上的rpm 包. yum能在线下载并安装rpm包,能更新系统,且还能自动处理包与包之间的依赖问题,这个是rpm 工具所不具备的;
yum、rpm安装文件分布在/usr的bin、lib、share不同目录,不用配置PATH,直接用命令,但可用命令卸载更新;
手动编译软件,默认位置为/usr/local下不同子目录下,不用配置PATH直接用命令(手动指定安装路径需要加PATH),使得软件更新和删除变得很麻烦。编译安装的软件没有卸载命令,卸载就是把所有这个软件的文件删除

yum安装

在线下载并安装rpm包,适用于CentOS、Fedora、RedHat及类似系统

yum install epel-releas :安装第三方yum源EPEL(企业版 Linux 附加软件包的简称)
yum repolist enabled :显示可用的源仓库(/etc/yum.repos.d/目录下配置)
yum install yum-fastestmirror :自动选择最快的yum源
yum list installed |grep java :列出已安装的软件(查看已安装的JDK)
yum remove java-1.8.0-openjdk.x86_64 :卸载软件(卸载JDK)
yum list java* :列出已安装和可安装的软件(查看yum库中的JDK包)
yum install [-y] java-1.8.0-openjdk :安装软件JDK(-y自动安装)(推荐这种方式安装)
yum install docker-ce-18.03.1.ce :安装指定版本的软件(已知docker-ce.x86_64 18.03.1.ce-1.el7.centos,则rpm包名为docker-ce-18.03.1.ce-1.el7.centos.x86_64.rpm)
yum check-update [kernel] :列出所有可更新的软件(检查更新kernel)
yum update tomcat :更新软件(可所有)
rpm -ql 软件名称 :查询yum安装路径(软件名称可通过rpm -qa|grep java)
yum info kernel :查看软件(kernel)的信息
yum clean all :(清除缓存,使最新的yum配置生效)

rpm包手动下载安装

yum中没有时用,适用于CentOS、Fedora、RedHat及类似系统;

wget -P /opt https://网址 :下载到/opt目录

rpm -ivh wps-office-版本.x86_64.rpm :安装rpm包(包要先下载)(要先装依赖包)
rpm -e wps-office :卸载软件(注意不要软件名不要版本号)
rpm -qa |grep wps :查看安装的rpm包
rpm -ql 软件名称 :查看rpm包安装路径(软件名称可通过rpm -qa|grep java)

  • 14
    点赞
  • 55
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值