Linux命令基础
Shell
Linux系统中运行的一支特殊程序
在用户和内核之间充当翻译官,shell接收用户的命令翻译成二进制内核,内核调动硬件资源来响应用户的命令
用户登录Linux系统时,自动加载一个shell程序
Base是Linux系统中默认使用的shell程序
shell位于/bin/base文件下
Linux命令的分类
内部命令 | 外部命令 |
---|---|
集成与Shell解释器程序内的一些指令 | Linux系统中能够完成特定功能的脚本文件或二进制程序 |
属于shell的一部分 | 不属于shell |
没有单独对应的系统文件 | 每个外部命令对应了系统中的一个文件 |
自动载入内存,可以直接使用 | 必须知道文件位置并使用shell加载才能使用 |
查看内部命令
help,enable 命令 可以用来查看内部命令有哪些
type 命令 可以查看命令是什么命令
enable -n 命令 禁用内部命令
Linux命令行使用格式
命令字 [选项] [参数]
命令字
是整条命令中最关键的一部分
唯一确定一条命令
选项
短格式选项:使用"-" 符号引导 使用字符,可以多个字母组合使用
长格式选项:使用"–"符号引导 使用单词
参数
命令字的处理对象
可以是文件名,目录名,用户名
参数可以从0到多个
编辑Linux命令行小技巧
Tab键:自动补齐
**反斜杠**:强制换行
Ctrl + U:清空至行首
Ctrl + K:清空至行尾
Ctrl + L:清屏
Ctrl + C:取消本次命令编辑
Ctrl + a:切换至行首
Ctrl + e:切换至行尾
Linux命令帮助
内部命令help
查看Shell内部命令的帮助信息
命令–help
适用于大多数外部Linux命令查询
man手册
使用“↑”,“↓”方向键滚动一行文本
使用Page Up和Page Down键翻页
按Q或q退出阅读环境
按“/”键查找内容,n键向下查找,N键向上查找
路径
绝对路径:以“/”开始的路径为绝对路径
相对路径:以当前路径开始的为相对路径
目录与文件基本操作
列表显示目录内容 ls
显示目录中内容,包括子目录和文件相关属性信息
ls -l :以长格式显示文件和目录列表
ls -a :显示所有文件信息,包括隐藏文件
ls -A :与a不同的是会多 . …标示当前目录和上层目录
ls -d :显示目录本身属性
ls -h :更人性化的显示
ls -R:以递归的方式显示
**ls -i ** :显示文件和目录的inode号
ls --color: 用颜色来区别
通配符
“?”
代表任意一个字符,有且只有一个
“*”
代表任意数个字符,
“[]”
代表可以匹配字符组中任意一个字符(组中字符不分大小写)
别名
通过设置别名来简化常用的,较长的命令
例如:alias myls='ls -alh’
注意等号两边无空格,是单引号
取消别名
unalias 命令别名
文件
mkdir 目录名 :创建目录
mkdir -p 递归目录 :创建一个递归目录
rm :删除
rm -rf :强制删除一个文件(慎用)
touch 文件名:创建一个空文件,可以用来更新文件访问时间
ln -s 源文件 链接名:创建软链接
ln 源文件 链接名:创建硬链接
注: 当一个文件有多个硬连接时,对文件修改会影响所有硬链接文件
mv
移动文件也可对文件改名
mv 文件名 地址:将文件移到这个地址
mv 文件名1 文件名2 :将文件名1改为文件名2
rename 旧字符 新字符 目标文件:大批量的修改文件名
CP
cp 文件名 地址 :将文件复制到这个地址
cp -f :覆盖目标同名文件或目录时不进行提醒,强制复制
cp -i :覆盖目标同名文件或目录时提醒确认
cp -p:复制保持源文件的权限,属主及时间标记等属性不变
cp -r:复制目录时必须使用此选项,表示递归复制所有文件及子目录
注:复制多个文件或目录时,目标位置必须是目录,且目标目录必须已存在
统计目录及文件空间占用情况 du
du -a :统计磁盘空间占用包括所有的文件 而不仅仅只统计目录
du -h :以更人性化的方式显示统计结果
du -s :只统计所占用空间总的大小,而不是统计每个子目录,文件大小
- -max-depth=n:统计所有小于第n层的目录的总大小
注:-a 与 -s不能同时使用
which
搜索范围由环境变量PATH决定(echo ¥PATH)
which 命令|程序名 :默认当找到第一个后就不在继续
which -a 命令|程序名:在所有搜素路径中查找
注:使用which查找内部命令时,将找不到对应的程序
find
采用递归方式,根据目标的名称,类型,大小等不同属性进行精细查找
find 【查找范围】【查找条件表达式】
用find实现多个查找条件
“-a”:表示且:当多个条件并列使用时用-a连接。条件同时满足的会被筛选出来
“-o”:表示或:只要文件满足用-o连接的其中一个条件就会被筛选出来
find之exec用法
-exec参数后面跟的是Linux命令,它是以分号“;”为结束标志,由于各个系统中分号会有不同的意义,因此在分号前面加上反斜杠转义符“\” ,{}代表前面find查找出来的文件名
find ./-type f -exec ls -l {} ;
查找普通文件并用ls -l 输出出来了