CentOs基础命令合集
一、基础命令
ls : 展示当前文件夹内所有文件
ls -l :展示当前文件夹内所有文件及其详细信息,省略为:ll
ls -a :展示当前文件夹内所有文件及隐藏文件
ls -al :(综合上边两项)展示当前文件夹所有(隐藏)文件及其详细信息
ls -i : 展示当前文件的inode编号
cd :切换目录
cd ~ :进入当前用户家目录
cd - :(相当于返回按钮)进入上一步的跳转操作前的目录位置,只缓存一步
cd / :进入根目录,CentOs的根目录为 / ,没有Windows的盘符
cd ../ :返回上级目录
pwd :展示当前文件路径
mkdir :创建文件夹
mkdir -p /a/b/c :创建多级目录时使用
touch :创建文件
cat :查看文件内容,全部展示,适用于小文件
echo:输出
echo "abcdefg" :控制台输出abcdefg
echo "abcdefg">a.txt :在a.txt文件中添加abcdefg,覆盖之前的内容
echo "abcdefg">>a.txt :在a.txt文件中追加abcdefg,保留之前的内容
echo $PATH :显示系统的 环境变量 PATH
的值。PATH
是一个包含多个目录路径的列表,系统通过这些路径查找用户输入的命令对应的可执行文件。
echo $PWD :显示 当前工作目录(Present Working Directory) 的完整路径,即你当前所在的目录位置。
cp :复制
cp a(文件) b(文件) :将a文件的复制,生成名字为b的复制文件
cp a.txt b(文件夹) :将a文件复制到b文件夹,名字不变,可以多个文件复制
cp -r a(文件夹)b(文件夹):将a文件夹复制到b文件夹
scp :远程复制
scp A本地文件 用户名@主机名:地址 :将本地文件复制到目标主机地址
scp a.txt root@bigbase02:/home :将a.txt复制到b主机的home文件夹下
scp -r /home/logs root@bigdata02:/home :将logs文件夹复制到b主机home文件夹下
mv :移动(剪切)
mv a(文件)b :将a文件移动到b文件夹,可以多个一起移动
mv a(文件)b(文件) :将a文件重命名为b
rm :移除(删除)
rm -rf / :勇敢者的游戏,别试,你可能需要要一份重新安装系统的教程
rm a :删除a文件,有二次确认,y or n ?
rm -f a :直接删除a文件
rm -r b :删除b文件夹,有二次确认,y or n ?
rm -rf b :直接删除b文件夹
ln :链接
ln a(文件) a.hard(硬连接文件名) :只能连接文件,不能连接目录(文件夹),新的硬链接文件前可以添加地址,硬链接inode编号与源文件一致,删除源文件依旧可以硬链接访问
ln -s a(文件) a.soft(软连接文件名):同上,软链接inode编号与源文件不一致,删除源文件后软连接无法访问
cat/more/less/tail/head : 查看
more /etc/services(测试用系统文件) :分页查看文件,适用于大文件,有进度条;enter键查看下一行,space查看下一页,q退出查看;more后边加 -5 :一页显示五行数据
less /etc/services(测试用系统文件) :同上没有百分比进度条
head -n 10 文件名:查看文件前十行
tail -n 10 文件名 :查看文件后十行
tail -f a.txt :滚动查看文件的末尾,常用于查看日志,ctrl+c 退出查看
head/tail -n a.txt >>b.txt :a.txt的前n行输入到b文件
gzip/zip/tar :压缩,解压缩
gzip a.txt :压缩到a.txt.gz,源文件不会保存,压缩文件名为源文件+.gz,可以多个文件压缩
gzip -d a.txt.gz :解压缩a.txt.gz,
zip a.zip a.txt :(需要下载)将a.txt压缩到a.zip,可以多个文件压缩,源文件保存
unzip :解压缩
unzip -d 地址 压缩文件 :解压文件到指定地址
tar + 命令符 :
-x 表示解压
-v 显示进度
-f 表示文件的名字
-z 表示使用gzip进行操作
-c 表示压缩
-j 以bzip2命令进⾏压缩或者解压
经常综合使用tar -zcvf 压缩;tar -zxvf 解压
tar -xzvf 压缩包名.tar.gz -C /目标路径 :解压到指定路径
find : 查找
find /home -name 'a*' : 查找home文件夹下的所有以a开头的文件,包括子路径中的文件,*代表任意字符,?站位一个字符
find /home -size +20:查找home文件夹下的所有大于20block的文件,+代表大于,-代表小于,1kb=2block
find /home -type d :查找home文件夹下的所有文件夹,d 文件夹 f二进制文件 c 字符文件 l连接文件
which/whereis :查找命令
which :查找某个可执行命令在系统中的具体路径,仅搜索 PATH
环境变量中定义的目录
whereis :查找某个命令的二进制文件、源代码和帮助文档的路径,搜索范围包括标准系统目录(如 /bin
, /usr/bin
, /usr/share/man
等)
grep :查找内容***
grep - i "hello" a.txt :在a文件夹查找hello,忽略大小写
grep -v :反向查找
grep -n :匹配字号
grep -w :全词匹配
磁盘命令
du -h :查看当前路径的文件夹大小
df -h :查看系统分区使用情况
free -h :查看内存使用情况
date 查看系统时间
date -s 手动设置时间
ntpdate time1.aliyun.com 同步时间到阿里云时间服务器
系统命令
重启 reboot 以及 init 6
关机 shutdown 以及 init 0
终止当前进程:快捷键 ctrl + c
清屏:ctrl + l or clear
rpm 安装
rpm -ivh :安装
rpm -e :卸载
rpm -e 包名 --nodeps :强制卸载
rpm -q :查询模式
rpm -a :列出全部安装包
rpm -qa | grep "包名":固定搭配,用于检查特定软件是否安装
rpm -qa | wc l :统计已安装软件包数量
rpm -qa --list :按安装时间排序
后续来日再更。。。
一家之言欢迎指正
最后看文要交税,交税,交税,一键三连
二、centos进阶命令(脚本中经常使用的命令)
1. 编辑器vi vim :直接加文件名就可以使用
vim 需要安装
yum install vim-enhanced
2. $ 符的使用
-
命令行提示符
普通用户的终端提示符以$
结尾user@hostname:~$
-
变量引用
引用变量值:$
用于获取变量内echo $PATH # 输出环境变量 PATH 的值 echo $HOME # 输出当前用户的家目录路径
定义变量时不需要
$
,但使用时需要name="Alice" # 定义变量 echo $name # 输出变量值(Alice)
-
特殊变量
$0:当前脚本或命令的名称 $1, $2, $n:脚本或函数的第 1、2 、n个参数 $?:上一条命令的退出状态(0 表示成功,非 0 表示失败) $$:当前 Shell 的进程 ID(PID) $#:脚本或函数参数的个数 $*: 以字符串的形式展示所有的参数 $@: 拿到所有的参数,可以当做一个数组
-
命令替换
$(command) 或 `command`:执行命令并将结果替换到当前位置 read -p "请输入一个数" num a=$num
-
正则表达式(行尾匹配)
在grep
、sed
、awk
等工具中,$
表示行尾grep "end$" file.txt # 匹配以 "end" 结尾的行
-
在
awk
中表示字段$0:整行内容。 $1, $2, ...:第 1、2 个字段(默认以空格或制表符分隔) echo "Hello World" | awk '{print $2}' # 输出 World
注意:双引号 " "
会解析 $
变量:echo "$PATH"
→输出地址
单引号 ' ' 会原样输出:echo '$PATH'
→ 输出 $PATH
3.expr 运算符
expr 可以执行基本的算术运算,如加、减、乘(需要使用反斜杠转义 *)、除、取余
格式要求严格,使用空格隔开
expr 1 + 2
expr 也支持基本的字符串操作,比如计算字符串的长度、截取字符串、比较字符串等