Linux学习记录
---恢复内容开始---
linux与unix的关系
linux是借鉴了unix设计思想,也称linux位类unix系统。
Linux常用命令
1.命令基本格式
命令【选项】【参数】
注意:个别命令不遵循此格式,有多个选项时,可以写在一起。例如 ls -lh ,选项可以是简化选项或是完整选项 例如ls命令中-a 等同于--all
2.文件处理命令
mkdir [-p] 创建目录
选项说明:
-p:是递归创建目录选项
cd 切换目录
ls 列出目录下有什么 -a -l -h "ll =ls -l"
rm -rf 删除目录或文件
cp 复制
mv 剪切
touch 创建文件
scp 用于linux与linux系统之间复制文件和目录
3.链接命令
ln 硬链接
ln -s 软链接
注意:软链接命令相当于windows系统桌面的快捷图标 删除源文件 链接文件就失效了。硬链接相当于是同一个文件
4.搜索命令
locate 搜索文件
whereis 搜索命令
whatis 命令是干什么的
find命令
格式:find 【搜索范围】 【搜索条件】
通配符:
* 匹配任意字符
?匹配任意一个字符
【】匹配任意一个中括号内的字符
选项说明:
-iname 忽略大小写
-user -root -nouser 按照所有者搜索
-mtime -atime -ctime 根据时间搜索
-size 根据文件大小
grep 搜索字符串
-v 排除指定字符串
-i忽略大小写
5.帮助命令
man
help
--help
6.压缩解压命令
常用压缩格式:.zip .gz .bz2 .tar.gz .tar.bz2
zip 源文件 源目录会保存
格式:
zip [参数] 目标文件 源文件
参数说明:
-r 压缩目录
unzip 源文件
gzip 压缩和解压后源文件消失
格式:
gzip 源文件
gunzip 源文件
gzip -c 源文件 > 压缩文件 (保留源文件)
gzip -r 和 gunzip -r 只能压缩和解压目录下的子文件
bzip2 不能压缩和解压目录
格式:
bzip2 源文件 和 bunzip2 源文件(不保留源文件)
bzip2 -k 源文件 和 bunzip2 -k 源文件(保留源文件)
.tar.gz 和 .tar.bz2 可以压缩解压文件或目录 并且会保留源文件
格式:
tar -zcvf xx.tar.gz 源文件
tar -jcvf xx.tar.bz2 源文件
tar -zxcf 源文件
tar -jxcf 源文件
7.关机重启取消命令
shutdown [选项] [参数] shutdown命令比较安全,不容易造成数据的丢失
选项说明:
-h 关机
-r 重启
-c 取消上一次的shutdow命令
例如:shutdown -h now 立即关机 shutdown -h 11:20
其他关机命令
halt
poweroff
init 0
runlevel 查看系统运行级别
0 | 关机 |
1 | 单用户 |
2 |
不完全多用户,不含NFS服务 |
3 | 完全多用户 |
4 | 未分配 |
5 | 图形界面 |
6 | 重启 |
其他重启
reboot
init 6
8退出命令
logout ---退出登录
exit 退出终端
9.用户登录查看命令
who 查看当前登录用户
w 查看已登录用户登录信息
last 查询过去用户和当前用户登录信息
lastlog 最后一次登录时间
10.别名和快捷键
alias 查看系统中所有的命令别名
alias 别名=‘原命令’ 设置命令别名
unalias 别名 删除别名
注意:以上的设置的别名,当系统重启就会失效。别名永久生效,需要把别名写到~/.bashrc文件中。
命令在系统中执行顺序
1.绝对路径或相对路径的命令
2.别名
3.Bash命令
4.$PATH环境变量里的命令的配置顺序。
快捷键:
ctrl + a 切换到命令首字母
ctrl + e 切换到命令尾字母
ctrl + u 删除整行命令
ctrl + l 清空命令行
ctrl + z 让命令在后台执行
ctrl + r 搜索历史命令
11.历史命令
history [选项] [历史记录文件]
-c 清除历史记录
-w 把缓存中的命令记录写到命令历史文件~/.bash_history中
历史命令保存条数,可以在环境变量配置文件中设置 /etc/profile,修改Hissize =1000参数
历史命令的调用:
上下键 切换历史命令
!n 执行n条命令
!!重复执行上一条命令
!字符串 执行匹配字符串开头的最后一条命令
Tab 键补全命令
double Tab 给出相关命令
Linux中的shell
shell就是用户操作界面,是命令行解释器。当用户输入命令,通过shell翻译(ASCII)成机器语言,系统内核才能识别并执行命令,后由shell翻译成人能识别的语言,反馈给用户。
Linux常见的shell:Bash sh ksh psh zsh
Unix常见的shell:csh tcsh
echo $SHELL 查看系统使用的shell
cat /etc/shells 查看系统支持的shell
sh 切换到sh shell (输入shell的名称切换shell,并使用exit退出)
shell脚本执行方式
echo [选项] [参数](输出内容) 输出命令
-e 可以输出特殊字符 例如:\t \n \a \e[1;30m \e[0m
vim shell.sh 编写一个shell脚本
#!/bin/bash ---->固定格式
#this is firsh shell --->注释
echo -e "\e[1;30mxxxxxx\e[0m"
执行
1.chomd 775 shell.sh 赋予权限
./shell.sh 执行上面编写的shell脚本
2.Bash shell.sh
输入输出重定向
0 代表标准输入键盘
1 代表标准正确输出“屏幕”
2 代表标准错误输出“屏幕”
输出重定向
命令>文件 把命令输出内容,已覆盖方式保存到文件中
例如:ls > a.txt 把ls输出的内容保存到a.txt文件中
命令>> 文件 把命令输出内容,追加到文件中
命令2>文件 和 命令2>>文件 把错误输出内容,保存到文件里
把正确命令和错误命令输出内容同时保存
命令>文件2>&1 命令>>文件2>&1
命令&>文件 命令&>>文件
ls >/dev/null /dev/null 就像一个“黑洞”,可以命令输出的内容重定向到/dev/null中,操作某些命令不想把输出的内容给其他人看,就可以这样做
输入重定向
wc [选项] [文件名]
-c 统计字节数
-w 统计单词数
-l 统计行数
ctrl + D 结束输入
wc < 文件 统计文件里的字节数 单词数 行数
wc << a ldladlfdsa a 统计以“a”到再输入“a”结束,输入的字节数 单词数 行数
连接符
; 连接多条命令,顺序执行
&& 逻辑与,前命令正确执行,后命令才执行
|| 逻辑或,刚好与逻辑与相反
例如:ls && echo "yes" || echo "no" ls命令正确执行了 就打印出“yes” 否则打印“no”
管道符
| 把前命令执行结果作为后命令操作对象
例如:netstat -an | grep "RESTABL"
---恢复内容结束---