首页 > Linux操作系统 > Linux操作系统 > linux系统基本知识(2)
Linux命令行基础
目录和文件基本管理
程序和文件检索
#################################################
一、Linux命令行基础
1. 什么是命令、命令行
命令:能够被Linux系统识别,用来完成某一类功能的指令或
程序
|--> 依赖于Shell解释器,默认为
/bin/bash
命令行:用户输入的命令及相关参数,按Enter键提交的一整
行指令字符串
2. Linux命令的种类
内部命令:属于Shell解释器程序(比如/bin/bash)的一部
分
外部命令:独立于Shell解释器之外的其他程序文件
3. 命令行的基本格式
命令字 [选项]… [参数]…
其中, 命令字:内部命令或外部命令的名称
选项:用来调控命令的执行方式,有短选项(-l、-A等
)、长选项(--word等)
参数:命令的操作对象,比如文件、目录、用户等
4. 快速编辑命令行
辅助操作:Tab键自动补齐、反斜杠 \ 强制换行
快捷键:
Ctrl + u:清空至行首
Ctrl + k:清空至行尾
Ctrl + w:删除前一个单词
Ctrl + l:清空整个屏幕
Ctrl + c:放弃当前编辑的命令行
5. 获取命令帮助
查看内部命令的帮助:help 命令名
查看外部命令的帮助:命令名 --help
如何区分一个命令是内部命令还是外部命令?
type 命令字
使用专用的man手册机制(不适用于内部命令):
man 外部命令名
man 配置文件名
** man交互环境中, /word 向后查找关键词“word”,
n下一个、N前一个,q退出
** 执行manpath可查看man手册页存放位置
** 有同名的man手册时,以数字区分入口,比如:man 5
passwd
二、目录和文件基本管理
1. 查看及切换目录
pwd — Print Working Directory,查看当前所在目录
cd — Change Directory,切换目录
格式:cd [目标文件夹]
** 绝对路径:以 / 开始的完整路径
** 相对路径:以当前工作目录为参照的路径
** 几个特殊目录表示:
. 当前目录
.. 父目录(上一层)
- 前一个目录(返回)
~user 用户user的家目录
ls — List,列表目录内容或文件属性
格式:ls [选项]... [目录或文件名]
常用选项:
-l 长格式显示
-A:显示所有(包括. 开头的隐藏文档)
-d:显示目录本身(而不是内容)的属性
-h:提供易读的容量单位(K、M等)
-R:递归显示内容(包括子目录及子子目录下的所
有内容)
** Shell环境中的通配符
任意字符 *
单个字符 ?
连续多个字符(任何一个) [a-z]
不连续的多个字符串(全部) {a,min,xy}
** 设置命令别名: alias 别名='实际的命令行'
** 查看别名:alias 别名、alias(列出所有)
** 删除别名:unalias 别名、unalias -a (删除所
有)
du — estimate file space usage,评估所占用的磁盘空间
汇总统计:du -sh [目录或文件]
分别统计(目录下子内容):du -ah [目录或文件]
2. 创建目录和文件
新建文件夹:
mkdir 目标文件夹
mkdir -p 目标文件夹(多层)
创建空文件:
touch file1 file2 file3 .. ..
创建快捷方式(软链接)
ln -s 被链接文件或目录 链接文件 【可指定
存放路径,设不同名称】
ln -s 被链接文件或目录 目标文件夹
【产生的链接文件与源同名】
3. 复制、删除、移动目录或文件
复制文件:
cp 源文件 目标文件 【复制的同时改名
】
复制目录:
cp -r 源目录 目标文件夹 【复制目
录必须加 -r 选项】
复制多个对象:
cp -rf 源文件或目录... 目标文件夹 【目标文
件夹必须存在】
** -f 选项可强制覆盖、-i 可给出提示(不强制)
【同时指定时,-i优先】
删除文件:
rm 文件...
删除目录:
rm -r 目录...
删除目录和文件:
rm -rf 目录或文件...
** -f 选项可强制删除、-i 可给出提示(不强制)
【同时指定时,-f优先】
移动文件:
mv 源文件 目标文件 【若目录不变,相
当于改名】
移动目录:
mv 源目录 目标文件夹 【可挪入
已存在的目录下,不改名】
移动多个对象:
mv 源文件或目录... 目标文件夹 【目标文
件夹必须存在】
三、程序和文件检索
1. which 查找可执行程序
默认搜索范围(目录集合)由环境变量PATH决定,执行 echo
$PATH 可查看
对于管理员,包括/sbin、/usr/sbin、/usr/local/sbin等几
乎所有程序目录
对于普通用户,不包括上述目录,只
有/bin/、/usr/bin、/usr/local/bin等目录
查找可执行程序:
which 命令字 【找到第一个就不再查找】
which -a 命令字 【搜索范围内每个目录都查
找】
2. locate 根据文件或目录名模糊查找
建立索引库:updatedb
按关键词查找:locate -i 关键词
** 选项 -i 忽略大小写
** 选项 -r 可匹配正则表达式(后续课程学习)
3. find 精确查找
格式:find [查找范围] [查找条件]
常用的查找条件
-type:按文件类型查找
-name:按文件名称查找
-size:按文件大小查找
-mtime:按内容修改的时间(+天数、-天数)
处理查找到的文件:
find [范围] [条件] -exec
处理命令 {} \;
其他查找设置:
-user:按文件所属的用户查找
-perm:按文件的权限查找
-maxdepth:指定查找的目录深度
#################################################
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/30065331/viewspace-1370865/ ,如需转载,请注明出处,否则将追究法律责任。