Linux常用命令

文件操作

ll  /ll -a #列出当前目录下的文件,包括权限
ls    

cd         #切换目录

pwd 	#查看当前工作目录

touch index.html #创建名为index.html文件

echo "hello world" > index.html #将内容追加到文件中

cat index.html   #查看内容

cp index.html index-copy.html  #复制

mv index-copy.html index2.html  #对文件名称进行修改或者移动

mkdir #创建目录

rmdir  #删除空文件夹

rm xxxx #删除xx文件      -r 递归删除 -f 强制删除

sudo rm -rf /*  ##  删库跑路命令:

find    #find -name ‘my*‘  搜索当前目录(含子目录,以下同)中,所有文件名以my开头的文件。

whereis  #查看文件的位置

解压缩命令
zip   #zip 压缩文件名 要压缩的文件
zip web.zip a.html        #压缩单个文件
zip web.zip a.html b.html #压缩多个文件


unzip #解压缩
unzip -l web.zip  #显示压缩文件内所包含的文件
unzip -d web web.zip  #指定文件解压缩后所要存储的目录


tar  #tar [参数] [压缩文件名] [要压缩的文件]
tar -zcvf web.tar.gz a.html b.html   #压缩
tar -zxvf web.tar.gz                 #解压

网络

ip addr  #查看当前的网卡

ifconfig (不是win下的ipconfig) ## 查看IP地址 :

ip link #比较新鲜的 

netstar/ss  #查看网络连接数

ping /hping3 #查看网络延迟

route/ traceroute #路由,查询路由表

dig / nslookup  #查看DNS解析

iptables       #排查防火墙

tcpdump  /Wireshark #网络抓包

进程和系统

ps     #查看进程信息

df -lh    ## 查看磁盘信息:

free 或free -m  ##  查看内存信息: 

mpstat -P ALL 1 5   ##  查看cpu占用情况:
##  (5秒内每隔一秒打印一次CPU占用信息)

netstat -help  ## 查看端口

netstat -oan   #所有端口占用情况

## 查看进程  (按内存占用从大到小)
PS-e  -o "%C  : %p : %z : %a"|sort -k5 -nr

## (按cpu利用率从大到小排列)
ps-e  -o "%C  : %p : %z : %a"|sort  -nr

权限和用户组

chmod    #改变文件或目录的权限  r:4  w:2  x:1  读4写2可执行1  777为最高权限

chmod 777 .bashrc    # 开放文件所有权限

chmod a-x .bashrc    # 去掉全部人的可执行权限

chgrp    #改变群组   chgrp [-R]  用户名 文件名
chown   #改变文件拥有者

useradd test  	 #添加一个名称为 test 用户
passwd test   	 #给刚创建用户 test 设置密码
userdel test  	 #删除 test 用户
 userdel –r test  #连用户的主目录一起删除
 
groupadd group1 	#增加名称为group1的群组
groupdel group1    #删除 group1 群组
gpasswd –A test group1    #将test用户设置为group1群组管理员


#查看当前登入的用户
 w  或者 who
 whoami #查看当前用户
#查看用户登入信息
 last /lastlog
#切换用户
su –l test    #从 root 用户 切换成 test 用户

docker安装命令 使用镜像加速

 yum update #更新yum

 wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

 yum makecache (如果为centos-8 改为centos-8)

 yum install docker -y  #安装docker  默认-y直接确认 yes

 systemctl start docker #启动docker
 
 systemctl enable docker #开机启动docker
 
 systemctl status docker #查看docker状态
 
 docker service start  #启动docker服务 
 docker run xxxx   #运行XX镜像
 docker search xxx  #查找xx镜像
 docker pull        #拉取xx镜像

linux目录结构和文件类型

上面的是Linux下的目录结构图,要知道这些目录有嘛用才能玩linux呀

/bin:
bin是Binary的缩写, 这个目录存放着最经常使用的命令。

/boot:
这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。

/dev :
dev是Device(设备)的缩写, 该目录下存放的是Linux的外部设备,在Linux中访问设备的方式和访问文件的方式是相同的。

/etc:
这个目录用来存放所有的系统管理所需要的配置文件和子目录。

/home:
用户的主目录,在Linux中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。

/lib:
这个目录里存放着系统最基本的动态连接共享库,其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。

/lost+found:
这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。

/media:
linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux会把识别的设备挂载到这个目录下。

/mnt:
系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在/mnt/上,然后进入该目录就可以查看光驱里的内容了。

/opt:
这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。

/proc:
这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。
这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件,比如可以通过下面的命令来屏蔽主机的ping命令,使别人无法ping你的机器:

echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
/root:
该目录为系统管理员,也称作超级权限者的用户主目录。

/sbin:
s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序。

/selinux:
这个目录是Redhat/CentOS所特有的目录,Selinux是一个安全机制,类似于windows的防火墙,但是这套机制比较复杂,这个目录就是存放selinux相关的文件的。

/srv:
该目录存放一些服务启动之后需要提取的数据。

/sys:

这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统 sysfs 。

sysfs文件系统集成了下面3种文件系统的信息:针对进程信息的proc文件系统、针对设备的devfs文件系统以及针对伪终端的devpts文件系统。

该文件系统是内核设备树的一个直观反映。

当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建。

/tmp:
这个目录是用来存放一些临时文件的。

/usr:
这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows下的program files目录。

/usr/bin:
系统用户使用的应用程序。

/usr/sbin:
超级用户使用的比较高级的管理程序和系统守护程序。

/usr/src:
内核源代码默认的放置目录。

/var:
这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。

/run:
是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录,应该让它指向 run

Linux常用命令

上一篇:Linux命令进阶篇之二


下一篇:Vscode编写Markdown添加Mac风格代码块