openEuler命令行基础

  • Post author:
  • Post category:其他


本文基于

《HCIA-openEuler V1.0 培训教材.pdf》

,非原创文章



Linux命令基础知识

GUI:Graphical User Interface – 图形用户界面

CUI:Command Line Interface – 命令行界面



Linux命令语法格式

命令格式:命令 [-选项] [参数]

#示例
ls -a /etc  #列出“/etc”文件夹下的所有文件
#“选项”分为“简化选项'-'”和“完整选项'--'”,如“-a”等价与“--all”



Linux命令行操作技巧

#光标
Home      #移动光标到本行开头
Ctrl + A  #移动光标到行首
Ctrl + E  #移动光标到行尾
Ctrl + C  #终止当前程序
Ctrl + L  #清理屏幕显示



Linux命令分类

分类 命令
登录和电源管理 login、shutdown、halt、reboot、install、exit、last等
文件处理 file、mkdir、grep、dd、find、mv、ls、diff、cat、ln等
系统管理 df、top、free、quote、at、ip、kill、crontab等
网络操作 ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、nslookup等
系统安全 passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、who等
其他 tar、unzip、gunzip、unarj、motools、man等



Linux基础命令



登录命令



login

作用:登录系统。

权限:所有用户。

Linux是多用户操作系统,可以同时接受多个用户登录,允许一个用户多次登录。每个虚拟控制台可以看作一个独立工作站,工作台之间可以切换。虚拟控制台的切换可以通过按下“Alt”键及功能键(通常是F1~F6)来实现。

虚拟控制台的好处:一个程序出错造成系统死锁时,可以切换到其他虚拟控制台工作,关闭这个程序。



last

作用:显示近期用户或终端的登录情况。管理员可以通过last查看该程序的log,获知谁曾经或企图连接系统。

权限:所有用户。



exit

作用:退出系统,没有参数,运行后退出系统进入登录界面。

权限:所有用户。



电源管理命令



shutdow

作用:关闭计算机。

权限:超级用户。

shutdown [-t seconds] [option] time [message]
-t seconds   #在改变到其他运行级别之前,告诉init程序多久后关机
-r           #关机后打开电源(重启)
-h           #关机后关闭电源
-F           #在重启计算机时强迫fsck
#fsck(File System Check)命令用于检查与修复Linux档案系统,可以同时检查一个或多个Linux档案系统。
time          #设定关机前的时间
#
message       #传送给使用者的警告讯息

系统关机前使用shutdown命令,系统管理员会通知所有登录的用户系统将要关闭,并且login指令会被冻结,即新的用户不能再登录



halt

作用:关闭系统。

权限:超级用户。

halt执行时,杀死应用进程,执行sync(将存于buffer中的资料强制写入硬盘中)系统调用,文件系统读写操作完成后停止内核。若系统运行级别为0或6,则关闭系统;否则以shutdown指令(shutdown -h)取代。

sync命令:强制将内存缓冲区中的数据立即写入磁盘

fsck命令:检查并试图修复文件系统中的错误

超级块位于块组最前面,描述文件系统整体信息的数据结构

/var/log/wtmp是一个二进制文件,记录每个用户的登录次数和持续时间等信息



reboot

作用:重新启动计算机。

权限:系统管理者。

-n  #保存数据后重启
-w  #不重启,仅记录写入到/var/log/wtmp文件中
-d  #不把记录写入到/var/log/wtmp文件中
-i  #关闭网络设置后再重启



文件管理命令



Linux文件目录结构

Linux系统中一切皆文件,其文件目录结构是树形, “/” 是根目录

文件目录 解释
/bin bin是Binary的缩写,存放最常用的命令
/boot 启动Linux时的一些核心文件,包括连接文件和镜像文件
/dev Device的缩写,存放外部设备。
/etc 存放所有系统管理所需要的配置文件和子目录
/home 用户主目录
/lib 存放系统最基本的动态连接共享库
/media Linux系统自动识别设备之后,挂载到这个目录下
/mnt 让用户临时挂载别的文件系统
/opt 给主机额外安装软件的目录
/proc 系统内存映射的虚拟目录,获取系统信息
/root 系统管理员/超级权限者的用户主目录
/run 临时文件系统,存储系统启动以来的信息。若有/var/run目录,则指向/run
/sbin 存放系统管理员的系统管理程序
/srv 存放一些服务启动后需要提取的数据
/sys Linux2.6内核后,新出现文件系统sysfs
/tmp 用来存放一些临时文件
/usr 用户的应用程序和文件
/var 将经常被修改的目录存在这个目录下,包括各种日志文件



Linux文件路径

绝对路径:从/(根目录)开始的

相对路径:相对当前所在目录来说的路径



Linux文件命令



pwd

作用:打印当前的工作目录

pwd -L  #目录连接链接时,输出连接路径
pwd -P  #输出物理路径


cd

作用:改变当前工作目录

cd ..   #进入上一层目录
cd .    #进入当前目录
cd      #回到家目录
cd ~    #回到家目录
cd -    #进入前一个目录,两个目录之间快速切换


ls

作用:列出目录的内容或者文件的信息

ls              #列出当前目录下所有文件和目录(隐藏文件除外)
ls -l           #显示详细信息
ls -l /         #列出指定目录内容
ls -l /bin/bash #列出指定文件信息
ls -l f1 f2     #同时列出多个文件信息
ls -ld /        #列出指定目录信息
ls -lh          #-h用人类易读的格式显示大小信息
ls -a           #显示隐藏的文件和目录——包括.和..
ls -t           #按时间排序
ls -S           #按大小排序
ls -X           #按拓展名排序
ls -1           #一行显示一个文件


mkdir

作用:创建目录,若目录已存在则报错

mkdir -p dir1/dir2/dir3 #若dir1、dir2不存在则一并创建
mkdir -pv dir1/dir2     #显示创建的过程


touch

作用:创建空文件、修改文件时间戳

touch file      #把file的时间戳改为当前时间
touch -d "2021-02-08 19:14:10" file #把file的时间戳改为指定时间


cp

作用:复制文件或者目录 —— 高危命令

cp f1 f2      #把文件f1复制一份,命名为f2
cp f1 d1/     #把文件f1复制到目录d1下
cp f1 f2 d1/  #把文件f1、f2复制到目录d1下
cp -a f1 f2   #-a保留源文件属性
cp -i f1 f2   #覆盖f2之前需要用户确认
cp -r d1 d2   #把目录d1复制一份,命名为d2
cp -rv d1 d2  #-v显示过程
cp -rf d1 d2  #无法打开已经存在的目标文件时删除目标文件然后重试
#把一个目录下众多子目录中的html文件全部复制出来,放到目录/data/html中
find -name "*.html" -exec cp {} /date/html/ \;    #方法一,分号不能去掉
find -name "*.html" | xargs cp -t /data/html/     #方法二,xargs及-t减少cp进程数


mv

作用:移动文件或者目录 —— 高危命令

mv f1 f2      #将f1重命名为f2
mv -b f1 f2   #若f2已存在,则先备份文件
mv -f f1 f2   #若f2已存在,则直接覆盖
mv -i f1 f2   #若f2已存在,则询问是否覆盖


rm

作用:删除文件或者目录 —— 高危命令

注意:

没有撤销删除操作

rm -f dir     #忽略不存在的文件,不给出提示
rm -r dir     #递归删除dir下所有文件和目录
rm -i dir     #删除前询问
rm -v dir     #显示删除步骤
rm -rf dir    #递归删除且无需确认


cat

作用:读取文件的全部内容、将几个文件合并为一个文件

cat file        #读取file全部内容
cat -A file     #显示不可打印字符
cat f1 f2 > f2  #将f1和f2的内容合并到f3


head

作用:显示文件的开头内容,默认显示开头10行

head file       #显示file开头内容
head -n 3 file  #显示file前3行
head -c 3 file  #显示file前3字节
head -n -3 file #显示file除了最后3行的所有内容


tail

作用:读取文件的尾部内容

tail -n 3 file  #显示file最后三行
tail -n +3 file #显示第三行到最后的所有内容
tail -f file    #跟踪file尾部变化显示
#后台ping,通过tail显示实时的ping信息
ping cn.bing.com > ping.log &
tail -f ping.log


more

作用:以一页一页的方式逐页阅读文件内容

Enter - 向下n行,默认是1行
Ctrl+F - 向下滚动一屏
SPACE - 向下滚动一屏
Ctrl+B - 向上滚动一屏
= - 输出当前行的行号
V - 调用vi编辑器
!命令 - 调用shell命令并执行
q - 退出more


less

作用:读取内容,分屏显示,可以随意浏览文件,查看之前不加载整文件

/string - 向下搜索string
?string - 向上搜索string
Q - 退出less
SPACE - 滚动一页
Enter - 滚动一行
h - 显示帮助界面


find

作用:在指定目录下查找文件

find [path…] [expression]

find -name "*book*"       #查找名字包含book的文件
find -user openEuler      #查找所属用户是openEuler的文件
find -empty               #查找空文件及目录
find -empty -delete       #查找空文件并删除
find -size 0              #查找大小为0的文件
find /etc -name "*.html"  #在/etc目录下查找.html类型的文件
find -mtime +7            #查找更改时间是7日以前的文件
find -mtime -7            #查找更改时间是7日之内的文件
find -type d    #查找文件类型是目录的文件
find -type c    #查找文件类型是字型装置文件的文件
find -type b    #查找文件类型是区块装置文件的文件
find -type p    #查找文件类型是具名贮存的文件
find -type f    #查找文件类型是一般文件的文件
find -type l    #查找文件类型是符号连结的文件


locate

作用:快速的查找文件系统内是否有指定的文件

原理:先建立一个文件名及路径的数据库,查找时去这个数据库内查询

使用:使用之前要先updatedb一下来生成数据库,一般定时执行

locate openEuler    #查找文件名中包含openEuler的文件
locate /etc/sh      #查找/etc目录下以sh开头的文件


which

作用:在PATH所指定的目录中查找可执行文件

which cd        #查找cd命令文件
which -a cd     #列出所有cd文件
which cp mv rm  #查找多个文件


gzip

作用:对单个文件或目录进行压缩或解压缩的命令,执行之后只有源文件或压缩后的文件,是对文件在原本位置压缩,压缩一个目录后是目录下的所有文件都变成了filename.gz。

gzip [option] [filename]

gzip -d file      #压缩file为file.gz
gzip -f file      #强行压缩file
gzip -l file.gz   #列出file.zip中的文件相关信息
gzip -r dir       #递归压缩dir
gzip -rv dir      #-v显示指令执行过程


tar

作用:打包文件,把多个文件打到一个包里,方便数据移动

tar cf dir.tar dir      #把dir目录及其所有内容打包
tar tf dir.tar          #列出dir.tar下所有内容
tar xf dir.tar          #解包dir.tar到当前目录
tar xf dir.tar -C /tmp  #解包dir.tar到当前目录的/tmp目录下
tar czf dir.tar.gz dir  #打包dir并使用gzip压缩


ln

作用:创建链接文件

软链接(symbolic link):以路径形式存在(快捷方式);删除源文件后链接失效;可以对目录进行链接;可以跨文件系统

硬链接(hard link):以文件副本形式存在,不占用实际空间;删除源文件后影响;不可以对目录链接;不可以跨文件系统

ln适用场景:多个不同目录需要同一文件的场景,只需要某一固定目录放置该文件,其他目录ln命令设置link该文件,不必重复占用磁盘空间

#不带参数情况下默认创建硬链接
ln sourcefile targetfile    #创建硬链接
ln -s sourcefile targetfile #创建软链接



帮助命令



man

序号 代表内容
1 使用者在shell中可以操作的指令或程序
2 系统核心可调用的函数与工具等
3 常用的函数(function)和函数库(library)
4 设备文档的说明,通常是/dev下的文件
5 文件格式和约定
6 游戏(games)
7 杂项(包括宏和惯例)
8 系统管理命令(通常仅适用于root用户)
9 内核例程(非标准)
man sleep       #查看sleep命令手册
man 3 sleep     #查看sleep命令库函数
#查找名字包含keyword的man文档
man -k keyword
find /usr/share/man -iname "*keyword*"



help

help pwd      #pwd命令的详细讲解
help -d pwd   #pwd命令简短主题描述
help -s pwd   #pwd命令简短语法描述