linux基础知识
一、命令基本格式
[root@localhost ~] #
root:代表登录用户
localhost:当前计算机的主机名
~当前所在的目录(家目录)
[]后面的符号用来判断登录的用户
#超级用户提示符
$普通用户提示符
命令格式
命令 [选项] [参数] 选项:调整命令的功能 参数:操作对象
注意:个别命令不遵循此格式
当有多个选项时可以写一起
简化选项与完整选项 -a 等于 - -all
ls
-a 显示所有文件,包括隐藏文件
-l 显示详细信息
-d 查看目录属性
-h 人性化显示
-i显示inode
-rw-r--r--. 1 root root 7572 12月 7 23:59 install.log.syslog
权限 引用计数 所有者 所属组 文件大小(字节)-h人性化显示大小 最后一次修改时间 文件名
权限:-rw-r--r--
-文件类型(-文件 d 目录 | 软链接文件)
去掉第一位剩下的九位3位为一组
rw-:u所有者 r- -:g所属组 r - -:o其他人
r:读 w:写 x:执行
linux中点开头的文件都是隐藏文件
二、文件处理命令
mkdir -p [目录名]
-p:递归创建目录
命令英文:make directories
cd [目录]
英文:change directory
简化操作:cd 进入当前用户的家目录
cd - 进入上次目录
cd .. 进入上一级目录
pwd:print working directory
理解:绝对路径和相对路径
tab有补全命令和补全目录的功能,要养成多用tab建的习惯(还可以用于排错,补全不了就是输错了)
mkdir 文件名 -创建空目录
touch 文件名 -创建空文件
删除文件命令
rm -rf 文件名
-r:删除目录
-f:强制
三、复制
cp [选项] [文件名或目录] [目录]
-r 复制目录
-p 连带文件属性复制
-d 若文件为链接文件,则复制链接属性
-a 相当于 -rpd
四、mv剪切或改名
mv [选项] [文件名或目录] [目录]
find
find 搜索范围 搜索条件
1.根据文件名搜索
find / -name 文件名
-iname 搜索结果不区分大小写
-user 按所有者搜索
-nouser
2.按时间搜索
find /var/log/ -mtime +10
-10 10天内
10 第10天当天
+10 10天前
-atime 文件访问时间
-ctime 改变文件属性
-mtime 修改文件内容
3.按照文件大小搜索
find . -size 25k
-25k 小于25k的文件 25k 等于25k的文件 +25k 大于25k的文件
find . -inum 264454 根据i节点搜索
find / -size +20k -a -size -50k -exec ls -lh {} \;
grep 搜索字符串的命令
格式:grep [搜索范围] 字符串 文件名
-i 忽略大小写
-v 排除指定字符串
man 帮助命令
相当于whatis
例 man [-f] ls
man -k 命令
相当于apropos 查看和命令(包含此关键字)相关的所有帮助
--help 帮助命令
help 命令
shell内部命令帮助
压缩与解压缩
zip格式的压缩与解压
1.压缩文件
zip 压缩文件名 源文件
2.压缩目录
zip -r 压缩文件名 目录
3.解压缩
unzip 文件名
gzip压缩与解压缩
1.压缩文件 --直接压缩文件源文件消失
gzip 文件名
2.压缩目录
gzip -r 目录 --压缩目录下的所有文件但保留目录
3.解压缩
gzip -d 压缩文件名
tar打包
tar -cvf 打包文件名
tar -xvf 解打包文件名
.tar.gz压缩格式
1.压缩
tar -zcvf 压缩包名.tar.gz 源文件
选项 z 压缩为.tar.gz格式
2.解压缩
tar -zxvf 压缩包名.tar.gz -C 路径
-x 解压缩.tar.gz
压缩包名可以用绝对路径指定存放位置
-C 路径 指定解压缩位置
压缩多个文件用空格隔开就行
3.查看单不解压缩
tar -ztvf 压缩包名.tar.gz
关机命令
shutdown [选项] [时间]
例:shutdown -r now 立即重启
-c 取消前一个关机命令
-r 重启 reboot 重启
-h 关机
logout 退出登录 注:养成退出登录的好习惯不然会一直占资源
挂载
mount 查看系统中已经挂载的设备
mount -a 自动挂载配置文件/etc/fstab中的内容
挂载命令格式:
mount [-t 文件系统] 设备文件名 挂载点
fdisk -l 查看盘符(u盘硬盘的设备文件名)
挂载u盘实例:mount -t vfat /dev/sdb1 /mnt/sub/
linux默认不支持NTFS文件系统
挂载光盘:
建立挂载点 mkdir /mnt/cdrom/
mount -t iso9660 /dev/cdrom /mnt/cdrom/
mount /dev/sr0 /mnt/cdrom/ -常用
/dev/sr0 -linux定义的光盘名,记住就行
w
who
用户登录查看命令
last
查询当前登录和过去登录的用户信息
lastlog 查看所有用户的最后一次登录时间
1.echo输出命令
echo [选项] [输出内容]
-e 输出一些控制字符
2.alias
查看系统中生效的命令别名
unalias 别名
删除别名
3.linux常用快捷键
ctrl + c 强制终止当前命令
ctrl + l 清屏
ctrl + a 光标移动到命令行首
ctrl + e 光标移动到命令行尾
ctrl + u 从光标所在位置删除到行首
ctrl + z 把命令放入后台
ctrl + r 在历史命令中搜索
4.history 历史命令
使用上下箭头调用以前的历史命令
!n 执行第n条历史命令
!字符串 重复执行最后一条以该字符串开头的命令
5.输出重定向
标准正确输出
命令 > 文件 >覆盖之前的
命令 >> 文件 >>追加到后面
标准错误输出
命令 2>文件
命令 2>>文件
命令 >>文件 2>&1 命令 &>>文件 正确错误都输出
命令 >> access.log 2>>error.log 正确日志和错误日志分开保存
注意空格
more 文件名
分屏显示文件内容
多命令执行符 ; 多命令执行,命令之间没有逻辑关系
&& 逻辑与
|| 逻辑或
6.管道符
命令格式
命令1 | 命令2
命令1的正确输出作为命令2的操作对象
例:netstat -an | grep ESTABLISHED | wc l
查询服务器连了多少人
7.通配符
? 匹配一个字符
* 匹配0个或多个任意字符
[] 匹配中括号中任意一个字符
8.bash中的其他特殊符号
‘’ 单引号,在单引号中所有的特殊符号都不起作用
“” 双引号中特殊符号都无特殊作用,$,`,\,例外,$:调用变量的值,`:引用命令,\:转义符
`,$() 用来引用系统命令,推荐用$()
# shell脚本中#开头的行代表注释
$ 调用变量的值,例$name代表调用name的值
\ 转义符,跟在其后的特殊字符失去特殊含义变成普通字符。
9.vim文本编辑器
vim 文件名
vim + 文件名 打开文件并将光标定位在最后一行
vim +行号 文件名 定位到指定的行
vim +/abc 文件名 定位到abc第一次出现的那一行 按n可以在字母出现的行间切换
vim aa bb cc 同时创建多个文件 在命令模式输入:n 切换到下一个文件 :N切换到上一个文件
当文件不存在是会自动生成文件并进入
i:插入模式 Esc:命令模式
命令模式下
dd 删除光标所在行
:q! 退出
底行模式常用指令
:w 保存
:q 退出
:! 强制执行
:ls 列出打开的所有文件夹
:n 跳转到下一个文件
:15 跳转到指定的行
/xxx 向光标后搜索指定的字符串
?xxx 向光标前搜索指定的字符串
命令模式常用指令:
ctrl + f 向下翻页(front)
ctrl + b 向上翻页(back)
ctrl + d 向下翻半页(down)
ctrl + u 向上翻半页(up)
dd 删除光标所在行
o 在光标的下方插入一行并切换到输入模式
yy 复制光标所在行
p 在光标所在行下方粘贴
P 在光标所在行的上方粘贴
磁盘管理
df 查看磁盘分区使用状况
-h 以1024为进制以最合适的显示
-T 显示文件系统的类型
du 统计磁盘上的文件的大小
-h 以1024为进制以最合适的显示
-s 指定统计目标
eg. du -sh /home