linux-基础篇工作常用的一些命令
###工作中经常用到的命令和解释
一、登录相关
1.ssh
ssh [选项] [用户@]主机 [命令]
常用选项
-p 端口
###远程访问192.168.111.131的服务器
ssh -p 15755 ubuntu@192.168.111.131
###远程访问192.168.111.131的服务器并执行命令 df -Th
ssh -p 15755 ubuntu@192.168.111.131 "df -h"
二、文件相关
1.scp&cp(常用)
复制文件到另一个机器/目录下
- -r 递归
- -a 保留特性
- -P 端口(scp)
##复制/home/test/下的文件到特定ip的/tmp下,赋予用户为ubuntu
scp -r -P <目的端口> /home/test/* ubuntu@ip:/tmp
###复制/home/test/下的文件到data下
cp -r /home/test/* /data
###复制/home/test/下的文件到data下,并保留特性
cp -ar /home/test/* /data
###复制/home/test/a.log到data
cp /home/test/a.log /data
2.mv(常用)
移动文件到另一个目录下
##移动lisj到/data下
mv /home/lisj /data
###移动lisj下的内容到/data
mv /home/lisj/* /data
3.rm(常用)
删除文件
- -r 递归删除
- -f 忽略不存在的文件,不警告
###删除文件a.log
rm a.log
###删除文件夹(递归)
rm -r /data
##忽略不存在的文件,删除文件夹(递归)
rm -rf /data
4.touch(常用)
创建文件
###创建文件a.log
touch a.log
5.mkdir(常用)
创建文件夹
mkdir <目录名> 创建目录
##创建test1 test2
mkdir test1 test2
###创建test1,在test1 里创建test2
mkdir -p test1/test2
###创建test1,在test1 里创建test2,test3
mkdir -p test1/{test2,test3}
6.tar(常用)
对文件进行压缩,解压
- -z 通过gzip的方式进行压缩,解压
- -x 解打包、压缩的功能
- -c 新建压缩文件
- -v 处理解压缩的文件
- -C 解压到指定目录
###压缩文件data
tar -zcvf aa.tar.gz /data
##解压文件aa.tar.gz
tar -zxvf aa.tar.gz
###解压文件aa.tar.gz到指定目录/home
tar -zxvf aa.tar.gz -C /home
7.zip&unzip
###安装zip(ubuntu版本)
apt install zip
###将指定的文件和目录压缩成a.zip
zip a.zip /data
###解压a.zip
unzip a.zip
8.du(常用)
查看系统分区信息,常用如下
###查看文件下的硬盘占用
du -sh *
9.fdisk
查看/设置硬盘分区,常用如下(主要用于新磁盘添加),后续会单独出一个磁盘添加的情况,踩雷过!!!
fdisk -l
10 mount&unmount
挂载/取消挂载磁盘到指定目录,注意是临时挂载,永久挂载需要在/etc/fstab补充,避免踩雷。
###挂载磁盘到/data
mount /dev/sdb /data
###卸载磁盘挂载
umount /dev/sdb
三、查询相关
1.vim&&vi(常用)
查看文件的详细信息,因为vim可以用不同的颜色来加亮,更多的使用vim,是vi的升级版本,但需要安装。
打开文件后后常用的操作
- -i 编辑模式
- :q 不保存退出
- :q! 保存强制退出
- :wq 保存退出
- yy 复制当前光标所在的行
- nyy 复制当前光标所在的行n次
- p:粘贴到光标的后面
- P(大写):粘贴到光标的前面
2.cat(常用,尤其容器里)
查看文件不做改动
3..tail&&head(常用)
tail 查看尾部的内容 (一般用于查看日志)
head 查看头部的内容 (一般看文件)
###查看 aa.txt文件头50行
head -n 50 aa.txt
###查看 aa.log最新的记录
tail -f aa.log
###查看 aa.log最新50行的记录
tail -50f aa.log
4.sort
对文件内容按行排序并输出
- -n 按数值大小排序
- -r 以相反顺序排序
- -t 指定字段分隔符
- -k 按指定字段范围排序
- -c 检查是否已排序,未按照会报错
# ":"分割,第三个 排序/etc/passwd文件,并检查
sort /etc/passwd -t: -k3 -c
5.ls(常用)
ls 查看目录中的文件ls -l 显示文件和目录的详细资料ls -a 列出全部文件,包含隐藏文
6.cd(常用)
切换当前目录
###切换到home
cd /home
###切换到上一级目录
cd ..
###切换上两级目录
cd ../..
###切换到头
cd
###切换到根目录
cd /
7.ps(常用)
查看进程
- -e 选择所有进程
- -a 显示与终端关联的所有进程,包括其他用户的进程。一般与 x 选项联用,用于显示所有进程
- -x 显示与终端无关的所有进程,包括有效用户的进程
- -f 树状结构展示
个人常用如下:
ps -ef
8.grep&sed&awk(常用)
详细见另一篇博客:linux-基础篇-三剑客grep,sed,awk(详细且常用)https://blog.csdn.net/j_0517/article/details/156646038?spm=1011.2415.3001.5331
查看前五行
head -n 5 nginx.conf
9.which
查询PATH下的信息,主要就看个jdk
which ls
which java
10.find(常用)
查询系统中想要的文件
##在当前目录下查询名字是aaa的文件
find ./* -name "aaa"
###找当前目录大于1MB的文件
find ./* -size +1M
###找当前目录下文件类型是目录的
find ./* -type d
###找当前目录下文件类型是文件的
find ./* -type f
# 找目录下30天未修改的文件
find ./* -mtime +30
# 找目录下30天未修改的文件并删除
find ./* -mtime +30 -exec rm {} \
11.diff(不咋用到)
文本对比工具

12.wc
统计字数,字节数,行数
- -l(小写的L)统计行数
- -w 统计字数
- -c 统计字节数
###统计1.txt 多少行
wc -l 1.txt
13.kill(常用)
杀死进程,常用:
kill -9 <pid>
9的来源(SIGKILL强制杀死)

14.clear
清空当前页面(就是看着乱了清理一下)
15 xargs
xargs 可以将管道或标准输入(stdin)数据转换成命令行参数,也能够从文件的输出中读取数据。
xargs 也可以将单行或多行文本输入转换为其他格式,例如多行变单行,单行变多行
命令格式:
somecommand |xargs -item command
- -a file 从文件中读入作为 stdin
- -e flag ,注意有的时候可能会是-E,flag必须是一个以空格分隔的标志,当xargs分析到含有flag这个标志的时候就停止。
- -p 当每次执行一个argument的时候询问一次用户。
- -n num 后面加次数,表示命令在执行的时候一次用的argument的个数,默认是用所有的。
- -t 表示先打印命令,然后再执行。
- -i 或者是-I,这得看linux支持了,将xargs的每项名称,一般是一行一行赋值给 {},可以用 {} 代替。
- -r no-run-if-empty 当xargs的输入为空的时候则停止xargs,不用再去执行了。
- -s num 命令行的最大字符数,指的是 xargs 后面那个命令的最大命令行字符数。
- -L num 从标准输入一次读取 num 行送给 command 命令。
- -l 同 -L。
- -d delim 分隔符,默认的xargs分隔符是回车,argument的分隔符是空格,这里修改的是xargs的分隔符。
- -x exit的意思,主要是配合-s使用。。
实际使用:
更多地用于关联查询(很多命令不支持|管道来传递参数)
### -d分割(按照“X”) -n 一行2个,不写默认全行
# echo "nameXnameXnameXname" | xargs -dX -n2
name name
name name
###查找并统计(find、wc、xargs)
find . -type f -name "*.txt" -print0 | xargs -0 wc -l
四、系统相关
1.chown(常用)
改变文件的所有者
###改变1.txt的所属用户
chown test 1.txt
###改变2.txt的所属用户和所属用户组
chown test:test 2.txt
###改变/data的所属用户
chown test /data
###改变/data及/data下的所属用户
chown -R test:test /data
2.chmod(安全必备)
修改文件所属用户、用户组、其他用户权限
#r记作4,w记作2,x记作1
#读read 写write 执行execute
#将file文件权限改为755
chmod 755 file.txt
#将data文件夹权限改成755
chmod 755 /data
#将data文件夹及以下的所有文件权限改成755
chmod -R 755 /data

红色 rwx是用户(读写执行都可),蓝色rx是用户组(读和执行),黄色rx是其他用户(读和执行)
3.adduser&deluser&addgroup&delgroup
- adduser <用户名> 添加用户
- deluser <用户名> 删除用户(默认会残留用户的家目录,在/home下)

- addgroup <组名> 添加组
- delgroup <组名> 删除组
4.passwd(常用)
修改用户密码(比如ubuntu默认没有root,需要sudo su - 后修改)
###修改root密码
passwd root
5.hostname&&hostnamectl(常用)
主机名查看和修改
##查看当前主机名
hostname
###修改主机名
hostnamectl set-hostname 新主机名
6.shutdown
shutdown -h now 即刻关机
shutdown -h 10 10分钟后关机
shutdown -h 11:00 11:00 关机
shutdown -h +10 预定时间关机(10分钟后关机)
shutdown -c 取消指定时间关机
shutdown -f now 重启
shutdown -r 10 10分钟后重启
shutdown -r 11:00 定时重启
reboot 重启
init 6 重启
init 0 即刻关机
7.top&&free
参考另一个博客linux-基础篇-top&free(常用) .https://blog.csdn.net/j_0517/article/details/156677197?spm=1001.2014.3001.55028
8.date
获取本机时间
#获取当前时间
date
#修改时间为2026年1月12日 9点30
date -s "20260112 09:30:00"
#当前时间以年月日时分展示(格式化日期)
date "+%Y-%m-%d-%H-%M"
-Y 当前年份 2026
-y 年份的后两位 26
-m 月份 1月
-M 分钟 30分
-d 日 12日
-D 日期 =%m%d%y 01/12/26
-H 时钟
五、网络相关
1.ifconfig&&ip addr
查看/设置系统IP地址(基本桌面版都能默认,主要查看)--需要设置的可以留言出一版
查看使用ip addr也可以实现

2.ping(常用)
本机访问某个ip是否通信,常用如下
##访问192.168.111.179的ip
ping 192.168.111.179
3.telnet(常用)
本机访问某个ip的特定端口是否通信
###访问192.168.111.179的80端口
telnet 192.168.111.179 80
参考:
更多推荐




所有评论(0)