登录指令
ssh 用户名@IP地址
接受主机密钥后,输入密码即可登录到服务器。
ls指令
语法:ls [选项] [文件或目录]
功能:列出目录内容
选项:
- -a:显示所有文件,包括隐藏文件
- -l:以长格式显示文件详细信息
- -R:递归显示子目录
示例:
ls -la # 显示当前目录所有文件的详细信息 ls /home # 列出/home目录的内容
pwd指令
语法:pwd
功能:显示当前工作目录的完整路径
示例:
pwd # 输出当前工作目录路径
cd指令
语法:cd [目录]
功能:更改当前工作目录
示例:
cd /usr/local # 切换到/usr/local目录 cd .. # 切换到上一级目录
目录
touch指令
语法:touch [选项] 文件
功能:创建新文件或更新文件时间戳
选项:
- -a:仅更改访问时间
- -m:仅更改修改时间
示例:
touch newfile.txt # 创建一个名为newfile.txt的新文件 touch -a existingfile.txt # 更新existingfile.txt的访问时间
mkdir指令
语法:mkdir [选项] 目录
功能:创建新目录
常用选项:
- -p:创建父目录,如果父目录不存在
示例:
mkdir newdir # 创建一个名为newdir的新目录 mkdir -p /path/to/newdir # 创建包含父目录的路径
rmdir指令
语法:rmdir [选项] 目录
功能:删除空目录
适用对象:空目录
常用选项:
- -p:删除指定目录及其父目录
示例:
rmdir emptydir # 删除一个名为emptydir的空目录 rmdir -p /path/to/emptydir # 删除指定路径及其父目录
rm指令
语法:rm [选项] 文件或目录
功能:删除文件或目录
选项:
- -f:强制删除,不提示确认
- -r:递归删除目录及其内容
示例:
rm file.txt # 删除file.txt文件 rm -r directory # 递归删除directory目录及其内容
man指令
语法:man [选项] 命令
功能:显示命令手册页
常用选项:
- -k:关键字搜索手册页
章节:手册页分为多个章节,如1(用户命令)、2(系统调用)等
示例:
man ls # 显示ls命令的手册页 man -k "file" # 搜索包含"file"关键字的手册页
cp指令
语法:cp [选项] 源文件 目标文件
功能:复制文件或目录
选项:
- -r:递归复制目录
- -i:交互式复制,提示是否覆盖
示例:
cp file1.txt file2.txt # 复制file1.txt到file2.txt cp -r dir1 dir2 # 递归复制dir1目录到dir2
mv指令
语法:mv [选项] 源文件 目标文件
功能:移动或重命名文件或目录
常用选项:
- -i:交互式移动,提示是否覆盖
示例:
mv file1.txt file2.txt # 将file1.txt重命名为file2.txt mv dir1 /path/to/dir2 # 移动dir1目录到/path/to/dir2
cat指令
语法:cat [选项] 文件
功能:显示文件内容
常用选项:
- -n:显示行号
示例:
cat file.txt # 显示file.txt的内容 cat -n file.txt # 显示file.txt的内容并加上行号
more指令
语法:more [选项] 文件
功能:分页显示文件内容
选项:
- +:从指定行开始显示
示例:
more file.txt # 分页显示file.txt的内容 more +10 file.txt # 从第10行开始显示file.txt的内容
less指令
语法:less [选项] 文件
功能:分页显示文件内容,支持前后翻页
选项:
- -N:显示行号
示例:
less file.txt # 分页显示file.txt的内容 less -N file.txt # 显示file.txt的内容并加上行号
head指令
语法:head [选项] 文件
功能:显示文件的前几行
选项:
- -n:指定显示的行数
示例:
head file.txt # 显示file.txt的前10行 head -n 20 file.txt # 显示file.txt的前20行
tail指令
语法:tail [选项] 文件
功能:显示文件的最后几行
选项:
- -n:指定显示的行数
- -f:实时监控文件末尾内容
示例:
tail file.txt # 显示file.txt的最后10行 tail -n 20 file.txt # 显示file.txt的最后20行 tail -f logfile # 实时监控logfile的末尾内容
date指令
语法:date [选项] [+格式]
用法:显示或设置系统时间
选项:
- -s:设置系统时间
- -d:显示指定时间
设定时间:
date -s "2023-01-01 12:00:00"
时间戳:
date +%s # 显示当前时间戳
示例:
date # 显示当前日期和时间 date +"%Y-%m-%d %H:%M:%S" # 以指定格式显示日期和时间
cal指令
语法:cal [选项] [月份] [年份]
功能:显示日历
选项:
- -y:显示整年日历
示例:
cal # 显示当前月份的日历 cal 2023 # 显示2023年的日历 cal -y # 显示当前年的日历
find指令
语法:find [路径] [选项] [表达式]
功能:在指定路径中查找文件或目录
选项:
- -name:按文件名查找
- -type:按文件类型查找
注意:路径可以是相对路径或绝对路径
示例:
find /home -name "*.txt" # 在/home目录下查找所有以.txt结尾的文件 find . -type d # 在当前目录下查找所有目录
which指令
功能:查找命令的可执行文件路径
示例:
which ls # 查找ls命令的可执行文件路径
whereis指令
功能:查找命令、源代码和手册页的路径
举例:
whereis ls # 查找ls命令及其相关文件的路径
alias指令
功能:定义命令别名
示例:
alias ll='ls -l' # 定义ll为ls -l的别名
grep指令
语法:grep [选项] 模式 [文件]
功能:在文件中搜索指定模式的文本
选项:
- -i:忽略大小写
- -r:递归搜索目录
示例:
grep "text" file.txt # 在file.txt中搜索包含"text"的行 grep -r "text" /path/to/directory # 在指定目录下递归搜索包含"text"的文件
zip/unzip指令
语法:
- zip [选项] 压缩文件.zip 文件或目录
- unzip [选项] 压缩文件.zip
功能:压缩和解压缩文件
常用选项:
- -r:递归压缩目录
示例:
zip archive.zip file1.txt file2.txt # 将file1.txt和file2.txt压缩到archive.zip zip -r archive.zip directory # 递归压缩directory目录到archive.zip unzip archive.zip # 解压archive.zip
rzsz工具
用于在windows和linux机器之间通过XShell传输文件
下载方式:可以通过软件包管理器(如yum或apt)安装rzsz工具
示例:
rz # 接收文件 sz file.txt # 发送file.txt文件
tar指令
打包/解包,不打开直接查看内容
语法:tar [选项] [文件]
选项:
- -c:创建新归档文件
- -x:从归档文件中提取文件
- -t:列出归档文件的内容
- -z:使用gzip压缩归档文件
- -f:指定归档文件名
示例:
tar -cvf archive.tar file1.txt file2.txt # 创建名为archive.tar的归档文件 tar -xvf archive.tar # 从archive.tar中提取文件 tar -tvf archive.tar # 列出archive.tar中的文件 tar -czvf archive.tar.gz file1.txt file2.txt # 创建并压缩归档文件 tar -xzvf archive.tar.gz # 解压并提取归档文件
bc命令
语法:bc [选项]
功能:命令行计算器
示例:
echo "5 + 3" | bc # 计算5加3 bc # 进入交互式计算器模式
uname -r指令
语法:uname -r
功能:显示内核版本
常用选项:
- -a:显示所有系统信息
不演示示例了
热键
用法:在终端中使用快捷键提高操作效率,例如:
- Ctrl + C:中断当前命令
- Ctrl + D:退出当前 shell 会话
- Tab:自动补全文件名或命令
shutdown指令
语法:shutdown [选项] [时间]
选项:
- -h:关机
- -r:重启
示例:
shutdown -h now # 立即关机 shutdown -r +5 # 5分钟后重启
扩展命令
命令及其运行原理:用户在使用Linux系统时,通过外壳程序(shell)访问Linux核心(kernel)。用户无法直接访问Linux的底层,需要通过“工具”访问,外壳程序就是这种工具,即命令行解释器。
Linux权限
不同用户:用户分为普通用户和超级用户(root)
命令 su
语法:su [选项] [用户名]
功能:切换用户身份
示例:
su - # 切换到root用户 su username # 切换到指定用户
Linux权限管理
访问者:用户或用户组
被访问物:文件或目录
文件访问权限设置
chmod命令
语法:chmod [选项] 模式 文件或目录
选项:
- -R:递归更改目录及其内容的权限
用法:
chmod 755 file.txt # 设置file.txt的权限为rwxr-xr-x chmod -R 755 directory # 递归设置directory及其内容的权限为rwxr-xr-x
chown命令
语法:chown [选项] 用户名[:组名] 文件或目录
功能:更改文件或目录的所有者和组
用法:
chown user file.txt # 将file.txt的所有者更改为user chown user:group file.txt # 将file.txt的所有者和组分别更改为user和group
chgrp命令
语法:chgrp [选项] 组名 文件或目录
功能:更改文件或目录的所属组
用法:
chgrp group file.txt # 将file.txt的所属组更改为group
umask指令
语法:umask [选项] [掩码]
功能:设置默认文件权限掩码
用法:
umask 022 # 设置默认文件权限掩码为022
file指令
语法:file [选项] 文件
常用选项:
- -b:仅输出文件类型,不显示文件名
示例:
file file.txt # 显示file.txt的文件类型 file -b file.txt # 仅显示file.txt的文件类型
sudo指令
语法:sudo [选项] 命令
功能:以超级用户身份执行命令
示例:
sudo apt update # 以root权限更新软件包列表
目录权限
粘滞键:当设置了粘滞键,文件只能由其创建者删除
示例:
chmod +t directory # 为directory设置粘滞位