shell通常被称为“壳”,是为用户提供操作界面的软件(命令解析器)。它类似于dos下的command.com和后来的cmd.exe,接受用户命令并调用相应的应用程序。
常见的Shell有两种类型:图形界面(GUI)和命令行终端(CLI)。
常用的GUI包括:
常用的CLI包括:
Redhat和CentOS系统使用的默认Shell是Bourne-Again Shell(bash)。Bash是Bourne shell(sh)的改进版本,是类UNIX系统中最成功的Shell之一。
当Shell以交互方式使用时,它会在等待用户输入命令时显示一个字符串,这就是所谓的Shell提示符。普通用户启动Shell时,默认提示符以$字符结束。

Linux基础命令的格式通常为:
命令 [选项] [参数]
选项可以有零个或多个,包括:
-开头,多个选项可以组合,如-a -b可以写成-ab
--开头,通常不能组合参数是命令的作用对象,可以有零个或多个。
Shell命令分为内部命令和外部命令:
使用type命令可以显示命令的类型,例如:
[root@C20230104840383 ~]# type cd cd 是 shell 内嵌
常用的目录管理命令包括:
// 目录管理
ls // 列出目录内容
-l // 长格式显示
// 长格式显示的第一段含义:
第一个字符:文件类型
- // 普通文件(f)
d // 目录文件
b // 块设备文件(block)
c // 字符设备文件(character)
l // 符号链接文件(symbolic link file)
p // 命令管道(pipe)
s // 套接字文件(socket)
后面九位字符:文件权限
9位,每3位一组,每一组:rwx(读,写,执行)
// 长格式显示的第二段含义:
文件硬链接的次数
// 长格式显示的第三段含义:
文件的属主(owner)
// 长格式显示的第四段含义:
文件的属组(group)
// 长格式显示的第五段含义:
文件大小(size),单位是字节
// 长格式显示的第六,七,八段含义:
时间戳(timestamp),最近一次被修改的时间
访问 // access,访问的时间
修改 // modify,文件内容被修改的时间
改变 // change,metadata(元数据)变化的时间
-h // 做单位转换
-a // 显示以.开头的隐藏文件
. // 表示当前目录
.. // 表示父目录
-d // 显示目录自身属性
-i // 显示文件的inode(index node)
-r // 逆序显示
-R // 递归(recursive)显示
cd // 切换目录
pwd // 查看当前所在目录路径
tree // 查看目录树
-d // 只显示目录
-L level // 指定显示的层级数目
-P 字符串 // 显示指定字符串匹配到的文件常用的文件管理命令包括:
// 文件管理
mkdir // 创建目录
-p // 创建目录时若父目录不存在则自动创建
-v // 显示目录创建过程
rmdir // 删除目录,只能删除空目录
touch // 创建一个空文件,touch一个已经创建的文件修改时间戳
stat // 显示文件或文件系统的状态
rm // 删除文件,删除命令默认会提示是否需要删除。
-r // 递归删除,删除目录时必须使用此选项
-f // 强制删除,不询问
cp // 复制文件,一个文件到一个文件,多个文件到一个目录,可同时移动多个,最后必须为目的地
-r // 递归拷贝,拷贝目录时必须使用此选项
-p // 拷贝时保留原权限
-a // 相当于-rp
mv // 移动文件,可同时移动多个,最后必须为目的地
// 特殊用法:改名,在当前目录进行 mv 123 321
install // 复制文件并且设置属性
-m MODE // 复制时修改权限
-o OWNER // 复制时修改文件属主
-g GROUP // 复制时修改属组常用的主机管理命令包括:
// 主机名管理
hostname // 查看或临时修改主机名,重开终端生效,重启失效
hostname uquq // 临时修改主机名
hostnamectl // 查看或永久修改主机名,重开终端生效,重启依然有效
hostnamectl set-hostname uquq // 永久修改主机名
或者直接编辑配置文件 vim 后续会继续说到
vim /etc/hostname // 按i进行编辑光标在前一位进行输入或者按a进行编辑光标会自动往后移一位,一般用a方便插入
按之后最下面会显示 -- INSERT --
可移动光标删除写入主机名,按ESC退出编辑,输入:wq保存退出
// 其它
time // 显示命令的执行时间,例如time ls /etc
clear // 清屏
whoami // 显示当前登录用户
who // 查看当前在线用户
w // 显示当前在线用户并显示其在运行的命令
which // 显示指定命令的绝对路径
date // 显示或设置日期与时间
// 不带参数的date用于显示当前系统日期与时间
// 格式化输出时间:+
%Y // 年
%m // 月
%d // 日
%F // 年-月-日
%H // 时
%M // 分
%S // 秒
如date "+%Y-%m-%d"
-s // 以字符串方式设置时间,如 date -s "+%Y-%m-%d"
cal // 打印日历
cal -3 // 打印三个月,上下一个月
cal -y // 打印一年
bc // Linux中的计算器
-l // 使用标准数学库
echo 'scale=3;20/2'|bc -l // scale=3表示保留两位小数
ldd // 查看指定程序有哪些依赖库文件
程序组成:
二进制程序
库文件
配置文件
帮助文件获取命令帮助的方式包括:
// 内部命令
help COMMAND
// 外部命令
COMMAND --help
// 在线文档
info COMMAND
// 命令手册 manual
man COMMAND
// 文档
/usr/share/doc
whatis COMMAND // 用于查看COMMAND出现在man的哪一章节中。
// 查询man帮助中此命令的作用
// man是分章节的,以下是每一章节的内容介绍:
1 用户命令(/bin,/usr/bin,/usr/local/bin);
2 系统调用;
3 库调用;
4 特殊文件(设备文件);
5 文件格式(配置文件 的语法);
6 游戏;
7 杂项(Miscellaneous);
8 管理命令(/sbin,/usr/sbin,/usr/local/sbin)
// man手册注意事项:
[] // 可选
<> // 必选
... // 可以出现多次
| // 多选一
{} // 分组
NAME // 命令名称及功能简要说明
SYNOPSIS // 用法说明,包括可用的选项
DESCRIPTION // 命令功能的详尽说明,可能包括每一个选项的意义
OPTIONS // 说明每一个选项的意义
FILES // 此命令相关的配置文件
BUGS // 报告bug
EXAMPLES // 使用示例
SEE ALSO // 另外参照
// man翻屏
SPACE // 向后翻一屏
b // 向前翻一屏
enter // 向后翻一行
k // 向前翻一行
// 查找
/text // 向后
?text // 向前
n // 下一个
N // 前一个
q // 退出Bash支持以下特性:
Bash支持的引号包括:
"" // 双引号,弱引用,可以实现变量替换 '' // 单引号,强引用,不完成变量替换 `` // 反引号,键盘左上角Esc下面的键,用于命令替换 $() // 与反引号用法相同,用于命令替换
常用的操作命令包括:
// 光标跳转 Ctrl+a // 跳到命令行首 Ctrl+e // 跳到命令行尾 Ctrl+u // 剪切光标至命令行首的内容 Ctrl+k // 剪切光标至命令行尾的内容 Ctrl+ // 剪切光标所在位置到下一行的内容
以上就是Linux 基础上的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号