Linux基本命令

绝大部分的命令都是在云服务器上进行使用过的,可以放心的使用。

一、开机、关机

sync  # 将数据由内存同步到硬盘中

shutdown # 关机指令,你可以man shutdown来看一下帮助文档。例如你可以执行如下的命令关机

shutdown -h # 计算机将在10分钟后关机

shutdown -h now # 马上关机

shutdown -h 20:25 # 系统会在今天20:25关机

shutdown -h +10 # 10分钟后关机

shutdown -r now # 系统马上重启

shutdown -r +10 # 10分钟后系统重启

reboot # 重启,等同于 shutdown -r now

halt # 关闭系统,等同于shutdown -h now 和 poweroff 

二、查看目录

根目录文件查看命令

ls / # 查看根目录下的文件

目录详解

  • /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 :这个目录是一个虚拟的目录。它是系统内存的映射。我们可以通过直接访问这个目录来获取系统信息
  • /root :该目录为系统管理员,也称超级权限者的用户主目录
  • /sbin :s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序
  • /srv :该目录存放一些服务启动之后需要提取的数据
  • /sys :这是Linux2.6内核的一个很大变化,该目录下安装了2.6内核中新出现的一个文件系统 sysfs
  • /tmp :这个目录是用来存放一些临时文件的,例如安装包
  • /usr :这是一个非常重要的目录,用户的很多应用程序和文件都存放在这个目录下,类似Windows下的program files目录
  • /usr/bin :系统用户使用的应用程序
  • /usr/sbin :超级用户使用的比较高级的管理程序和系统守护程序
  • /usr/src :内核源代码默认的放置目录
  • /var :这个目录中存放着不断扩充的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件
  • /run :是一个临时文件系统,存储系统启动以来的信息,当系统重启时,这个目录下的文件应该被删掉或清除
  • /www :存放服务器网站相关的资源,环境,网站的项目,当你使用宝塔面板才会有这个目录

三、常用的基本命令

一、对文件或目录进行操作的命令
cd # 切换目录命令

cd ./ # 当前目录

cd .. # 返回上一级目录

cd 目录名 # 进入指定的目录

ls # 列出目录

ls -a # 查看所有文件,包括隐藏文件

ls -s # 列出所有的文件,包括文件的属性和权限,不包含隐藏文件

ls -al # 查看所有文件的属性和权限,包括隐藏文件

cd ~ # 进入超级用户文件夹命令

pwd # 显示当前用户所在的目录

mkdir # 创建一个目录 mkdir 目录名 

mkdir -p 目录名/目录名/目录名 # 递归创建目录,创建多级目录

rmdir 目录名 # 删除目录,移除目录,只能删除空的目录,要删除该文件夹,需要删除其中的文件

rmdir -p 目录名/目录名/目录名 # 递归删除多个目录,层级删除

cp test.txt test # 拷贝文件,cp 文件名 需要拷贝到的路径

rm 文件名或目录名 # 移除文件或目录 会出现提示,输入y,即确定删除,输入n,即不会删除

rm -f 文件名或目录名 # 删除文件或目录,忽略不存在的文件,不会出现警告,强制删除!

rm -r 文件名或目录 # 递归删除目录

rm -i 文件名或目录 # 删除时会出现询问,是否删除

rm -rf / # 系统中的所有文件就会被删除,删库跑路命令!不要轻易使用!!!

mv 文件名或目录名 需要移动的路径 # 移动文件,相当于剪切

mv 旧的文件名或目录名 新的文件名或目录名 # mv还可以重命名文件或目录

mv -f 文件名或目录名 需要移动的路径 # 强制移动

mv -u 文件名或目录名 需要移动的路径 # 只替换已经更新过的文件

chgrp [-R] 属组名 文件名 # 修改文件属组

chown [-R] 属主名 文件名 # 更改文件属主

chown [-R] 属主名:属组名 文件名 # 修改文件属主,也可以同时更改文件属组

chmod [-R] xyz 文件名 # 更改文件或目录的权限 xyz表示读写执行的权限

chmod 777 文件名 # 赋予文件或目录最高权限,可读可写可执行

ifconfog # 查看网络配置
二、对文件进行操作的命令
cat 文件名 # 从第一行开始显示文件内容,用来读文章和读取配置文件使用的

tac 文件名 # 从最后一行开始显示,可以看出tac是cat的倒写

nl 文件名 # 显示文章内容的行号,适用于看代码,日志等

more 文件名 # 把文件内容进行分页阅读,使用空格键分页,回车代表向下看一行,:f显示当前阅读到的行数

less 文件名 # 与more类似,但是比more更好的是,可以向前翻页,空格代表翻页,上下键代表反动页面,退出使用q。向下查找字符串用 /+ 字符串,向上查询用?+关键字符串。n(小写)表示向下查询,N(大写)表示向上查询

head -n 20 文件名 # 查看文件的前20行,行数可以改变,通过-n参数改变查看的行数

tail -n 10 文件名 # 查看文件的后10行,行数可以改变,通过-n参数改变查看的行数

touch 文件名 # 创建文件,没有文件类型后缀的文件

touch 文件名.文件类型 # 有文件后缀的文件名

ln 文件名 链接名 # 创建一个硬链接,就好像拷贝一份源文件,创建链接之后,原文件修改后,链接文件也会随之修改

ln -s 文件名 链接名 # 创建一个软链接,相当于Windows下的创建一个快捷方式

echo "要输入的内容" >>文件名 # 对文件进行写入操作

三、用户管理常用命令
useradd -m 用户名 # 添加新用户命令,-m 作用是在home目录下自动创建该用户的主目录

cat /etc/passwd # 查看该服务器默认用户

userdel -r 用户名 # 删除用户,-r 主要是为了删除该用户所属的目录

usermod -d 需要移动到的目录 用户名 # 修改用户的所在目录,如果目录不存在,也不会报错

su 用户名 # 切换用户,当你切换会root用户时,需要验证密码,或者直接退出当前用户,回到root用户exit 退出命令

hostname 主机名 # 查看主机名:hostname ,修改主机名

passwd 用户名 # 给新创建的用户设置密码,Linux输入密码时不显示

passwd -l 用户名 # 冻结用户,用户不能登录

passwd -d 用户名 # 冻结用户,将密码清空,用户也不能登录

passwd -u 用户名 # 解锁被冻结的用户

groupadd 用户组名字 # 创建用户组

cat /etc/group # 在当前目录下查看用户组

groupadd -g 用户组id 用户组名字 # -g指定用户组的id,不指定就会自增

groupdel 用户组名字 # 删除用户组

groupmod -g 用户组id -n 用户组新名字 用户组旧名字 # 修改用户组的id和名字
四、磁盘管理
df -h # 列出文件系统整体磁盘使用量,-h加上容量单位M

du -h # 检查磁盘空间使用量,-h加上容量单位K

du -smh /* # 检查根目录下所占的容量

mount /dev/外部设备名 /mnt/挂载到的位置 # 将外部设备挂载到mnt目录下,访问外部设备中的数据

umount -f /dev/外部设备名 /mnt/卸载到的位置 # 将外部设备卸载,-f 强制卸载
五、进程管理
ps # 查看当前系统中正在执行的各种进程信息

ps -a # 显示当前终端运行的所有进程信息

ps -u # 以当前用户权限显示进程信息

ps -x # 显示后台运行进程的参数

ps -aux # 查看所有进程

# | 在Linux中,| 代表管道符  A|B:表示将A查询出来的信息作用于B

# grep 查找文件中符合条件的字符串

ps -aux|grep 进程 # 查询关于这个进程的信息,过滤进程信息

ps -ef|grep 进程 # 查看父进程信息

pstree # 查看目录结构树

prtree -p # 显示父id

pstree -u # 显示用户组

pstree -pu # 显示目录树的信息

netstat -apn|grep 端口号 # 查看被占用的端口号

kill -9 进程id # 结束某个进程,相当于Windows中的结束任务
五、安装软件

rpm命令安装(以java为例)

java -version # 检测是否存在java环境

rpm -qa|grep jdk # 检查jdk的版本信息

rpm -e --nodeps jdk8 # 移除java环境,--nodeps 是强制移除,后面是jdk的版本信息

rpm -ivh rpm包 # 安装java的rpm包,自动安装,安装完之后就可以使用命令 java -version 查看当前安装的java版本

vim /etc/profile # 进入编辑环境配置的vim界面

# 在最后加上环境变量的配置 这种方式可能会导致配置文件出错,最后命令使用不了
# JAVA_HOME=/usr/java/jdk1.8.0_281-amd64
# CLASSPATH=%JAVA_HOME%/lib:%JAVA_HOME%/jre/bin
# PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin
# export PATH CLASSPATH JAVA_HOME

# 使用这种配置环境变量的方式可以解决配置文件出错问题
export JAVA_HOME=/usr/java/jdk1.8.0_271
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tool.jar
export PATH CLASSPATH JAVA_HOME

 source /etc/profile # 让这个配置文件重新生效,最后执行java -version命令检查是否安装成功
 
 firewall-cmd --list-ports # 查看防火墙,如果显示FirewallD is not running,说明防火墙并未开启
 
 systemctl status firewalld # 查看系统防火墙状态
 
 systemctl start firewalld # 开启防火墙
 
 systemctl stop firewalld # 关闭防火墙
 
 systemctl restart firewalld.service # 重启防火墙
 
 firewall-cmd --permanent --zone=public --add-port=8080/tcp # 开启端口,需要开启别的端口就将8080端口改为某个端口即可,开启端口之后要重启防火墙

tar安装(以tomcat为例)

tar -zxvf tomcat的gz压缩包 # 解压tomcat的压缩包

# 这两个命令都是在tomcat的bin目录下执行
./startup.sh # 启动tomcat

# 如果启动成功后,通过公网ip访问却一直在加载中,没有显示tomcat网页,那么就需要在服务器控制台上开启8080和80端口,开启防火墙的8080和80端口,然后将tomcat中的conf文件夹中的server.xml文件中8080端口改成80端口,再用公网ip地址访问

./shutdown.sh # 关闭tomcat

yum安装

yum -y install 包名 # yum install 安装命令 -y 代表确定

转载请表明出处,谢谢了!

Linux基本命令

上一篇:linux下列出文件树


下一篇:VMware Workstation中CentOS救援模式进入方式