前言
在开始linux系统编程之前,掌握常用的linux命令和权限管理是必不可少的一步。本文将从零开始,带你熟悉linux环境下的基本操作,包括文件管理、目录操作、文本查看、权限设置等核心内容。无论你是刚接触linux的新手,还是希望系统梳理知识的老手,这篇文章都能为你提供清晰的指引。
思考:为什么生产环境中很少使用linux的图形界面?因为图形界面会占用大量系统资源,且远程管理时效率低下,命令行才是linux的精髓。
一、环境准备与远程登录
1. 查看linux主机ip
在终端中执行以下命令查看本机ip地址:
ifconfig
2. 使用xshell远程登录
- 下载xshell(家庭/学校版免费):https://www.netsarang.com/products/xsh_overview.html
- 在xshell中执行:
ssh [ip],输入用户名和密码即可登录。
xshell复制粘贴快捷键
- 复制:
ctrl + insert - 粘贴:
shift + insert
(注意:ctrl + c/ctrl + v在终端中不适用)
二、文件与目录基础操作
1.ls—— 列出目录内容
语法:ls [选项] [目录或文件]
常用选项:
| 选项 | 说明 |
|---|---|
-a | 列出所有文件(包括以.开头的隐藏文件) |
-l | 显示详细信息(权限、大小、修改时间等) |
-d | 将目录像文件一样显示,不列出其内容 |
-r | 递归列出所有子目录 |
-t | 按修改时间排序 |
-i | 输出文件的inode节点信息 |
示例:
ls -al # 显示所有文件的详细信息 ls -l /home # 查看/home目录下的内容
2.pwd—— 显示当前目录
pwd
3.cd—— 切换目录
语法:cd [目录名]
特殊用法:
cd .. # 返回上级目录 cd ~ # 进入当前用户的家目录 cd - # 返回上一次所在的目录 cd / # 进入根目录
路径知识
- 绝对路径:从根目录
/开始,如/home/user/test - 相对路径:相对于当前目录,如
./test、../temp
4.mkdir—— 创建目录
语法:mkdir [选项] 目录名
常用选项:-p 递归创建多级目录
mkdir mydir mkdir -p path1/path2/path3 # 一次性创建多级目录
5.rmdir—— 删除空目录
语法:rmdir [选项] 目录名
注意:只能删除空目录,若需删除非空目录,请使用rm -r。
6.touch—— 创建文件或修改时间戳
语法:touch [选项] 文件名
示例:
touch newfile.txt # 创建空文件 touch -a newfile.txt # 仅修改访问时间 touch -m newfile.txt # 仅修改修改时间
三、文件操作与内容查看
1.rm—— 删除文件或目录
语法:rm [选项] 文件或目录
常用选项:
-f:强制删除,不提示-i:删除前逐一询问-r:递归删除目录及其内容
示例:
rm file.txt # 删除文件 rm -r dir # 删除目录 rm -rf dir # 强制删除目录(慎用)
2.cp—— 复制文件或目录
语法:cp [选项] 源文件 目标文件
常用选项:
-i:覆盖前询问-r:递归复制目录
示例:
cp file.txt file_backup.txt # 复制文件 cp -r dir dir_backup # 复制目录 cp *.txt destdir/ # 复制所有txt文件到目标目录
3.mv—— 移动或重命名
语法:mv [选项] 源文件 目标文件
示例:
mv oldname.txt newname.txt # 重命名 mv file.txt dir/ # 移动文件 mv -i file.txt dir/ # 移动时若目标存在则询问
4.cat—— 查看文件内容
语法:cat [选项] 文件
常用选项:
-n:显示行号-b:非空行显示行号-s:压缩连续空行
5.more/less—— 分页查看
more:只能向后翻页less:支持前后翻页、搜索
less常用操作:
/字符串:向下搜索?字符串:向上搜索n/n:重复/反向重复搜索q:退出
6.head/tail—— 查看文件头尾
head -n 20 file.txt # 显示前20行 tail -n 10 file.txt # 显示后10行 tail -f log.txt # 实时跟踪日志文件
实战技巧:显示文件的第180到200行
head -200 temp.txt | tail -20
四、搜索与查找
1.find—— 文件搜索
语法:find 路径 -name 文件名
示例:
find /home -name "*.c" # 查找所有.c文件 find . -name "test.txt" # 当前目录下查找
2.grep—— 文本搜索
语法:grep [选项] 字符串 文件
常用选项:
-i:忽略大小写-n:显示行号-v:反向匹配(显示不包含该字符串的行)
示例:
grep "error" log.txt grep -ni "warning" log.txt grep -v "debug" log.txt
3.which/whereis—— 命令定位
which ls # 显示ls命令的路径 whereis ls # 显示ls的二进制、源码、手册位置
五、压缩与解压
1.tar—— 打包/解包(最常用)
语法:tar [选项] 文件名 文件/目录
常用选项:
| 选项 | 说明 |
|---|---|
-c | 创建压缩包 |
-x | 解压 |
-z | 通过gzip压缩 |
-j | 通过bzip2压缩 |
-v | 显示过程 |
-f | 指定文件名(必须紧跟选项后) |
-c | 解压到指定目录 |
示例:
tar -czvf backup.tar.gz /home # 打包并gzip压缩 tar -xzvf backup.tar.gz # 解压 tar -xzvf backup.tar.gz -c /tmp # 解压到指定目录
2.zip/unzip
zip -r archive.zip dir/ # 压缩目录 unzip archive.zip -d /target # 解压到指定目录
六、系统信息与时间
1.date—— 日期时间
date # 显示当前时间 date +%y-%m-%d # 格式:2025-01-15 date +%s # 显示时间戳 date -d @1673432636 # 时间戳转日期
2.cal—— 日历
cal # 显示当月日历 cal -3 # 显示上月、本月、下月 cal 2025 # 显示全年日历
3.bc—— 计算器
bc 1 + 2 quit
4.uname -r—— 查看内核版本
uname -a # 显示所有系统信息
七、权限管理
1. 用户类型
- 超级用户(root):提示符为
#,拥有最高权限 - 普通用户:提示符为
$,权限受限
切换用户:
su username # 切换用户 su root # 切换到root(需输入密码)
2. 文件类型与权限
文件类型标识:
| 标识 | 类型 |
|---|---|
- | 普通文件 |
d | 目录 |
l | 软链接 |
b | 块设备 |
c | 字符设备 |
权限表示(rwx):
- r:读(4)
- w:写(2)
- x:执行(1)
3. 修改权限 ——chmod
格式:chmod [选项] 权限 文件名
符号方式:
chmod u+w file.txt # 给所有者添加写权限 chmod g-x file.txt # 移除组用户执行权限 chmod o=r file.txt # 设置其他用户为只读 chmod a+x script.sh # 所有用户添加执行权限
数字方式:
chmod 644 file.txt # 所有者读写,组读,其他读 chmod 755 script.sh # 所有者rwx,组和用户rx
4. 修改所有者 ——chown
chown user file.txt # 修改文件所有者 chown -r user:group dir/ # 递归修改目录所有者及组
5. 修改所属组 ——chgrp
chgrp group file.txt
6. 粘滞位(sticky bit)
粘滞位用于共享目录,使文件只能被所有者或root删除。
chmod +t /shared # 添加粘滞位 # 权限末尾出现't': drwxrwxrwt
八、shell 命令运行原理
linux系统由**内核(kernel)和外壳(shell)**组成。用户通过shell与内核交互,shell将我们的命令翻译给内核,再将结果返回给用户。
- bash 是最常见的shell
- shell不仅执行命令,还支持变量、管道、重定向等高级功能
九、常用热键
tab:命令或文件名补全ctrl + c:终止当前程序ctrl + d:退出终端(等同于exit)
总结
本文从基础命令入手,系统梳理了linux环境下的文件操作、文本查看、压缩解压、搜索查找、权限管理等核心知识点。掌握这些命令后,你已经能够熟练地在linux命令行中进行日常操作。后续的学习中,建议多动手实践,将命令与真实场景结合,才能真正内化为自己的技能。
以上就是linux基础指令与权限管理的完全指南的详细内容,更多关于linux基础指令与权限管理的资料请关注代码网其它相关文章!
发表评论