《鸟哥的Linux私房菜》学习笔记(未完)
linux内置工具
man
info
:需要以info格式书写说明文档nano
:简单的文本编辑器
linux命令
维护
who
:查看当前在线用户ps -aux
:查看进程netstat -a
:查询网络状态shutdown
,reboot
:在执行前会自动执行sync
init
:切换运行级别(0:关机,3:纯文本,5:图形接口模式,6:重新启动)
权限
身份类别:owner, group, others
权限类别:read, write, execute
chgrp (-R,递归) 所属组名 文件名
:改变groupchown (-R,递归) 所有者名 文件名
:改变ownerchmod (-R,递归) 文件名
:改变权限chmod 777 文件名
:r=4,w=2,x=1chmod [u/g/o/a] [+/-/=][r/w/x] 文件名
:chmod u=rwx,g=rx,o=r 文件名
档案与目录管理
cd
:变换目录(-
:上一个目录)pwd
:显示当前目录mkdir
:创建目录ls
,ll
:列出目录下的文件cp 源文件 目标文件
:复制(不同权限用户复制结果不同)-a
:等价于-pdr
,d
表示复制链接文档属性-p
:保留属性复制-r
:递归,应用于目录
rm
:删除-r
:递归,应用于目录(危险)-f
:忽略警告信息(危险)
mv
:移动,可用来重命名
档案内容查看
cat
:显示档案内容nl
:带行号显示head
:显示前几行head -n 100
:指定前n行
tail
:显示后几行tail -n 100
:指定后n行
more
:按页显示,对管线不可回看space
:下一页enter
:下一行b
:上一页q
:退出
less
:按页显示,可回看space
:下一页[pageup]
:上一页[pagedown]
:下一页/字符串
+n
:向后搜索
档案修改
touch
:创建文件,修改档案时间
搜索
which
:搜索脚本位置type
:检测内置命令,检测脚本别名whereis
:利用数据库搜索,只能搜索PATHlocate
:利用数据库搜索,输入部分文件名即可find
:硬盘搜索
磁盘与文件系统
待学习…
归档与压缩
gzip
:生成.gz
文件gzip a.txt
:默认会删除源文件gzip -c a.txt > a.txt.gz
:可以保留源文件gzip -d a.txt.gz
:-d
为解压缩命令,默认删除源文件gzip -cd a.txt.gz > a.txt
:保留源文件
bzip2
:生成.bz2
文件,压缩率比gzip高-d
:解压命令-z
:压缩命令-k
:保留源文件
tar
:归档命令-c
:打包-t
:查询归档内容,相当于打开-x
:解打包-j
:通过bzip2压缩-z
:通过gzip严肃哦-v
:压缩/解压缩过程中显示文件名-f
:打包/解打包文件名(建议单独写)tar -jcv -f filename.tar.bz2 源目录
:压缩tar -jxv -f filename.tar.bz2
:解压tar -jtv -f filename.tar.bz2
:查询
vim
- 模式
- 一般模式:光标移动,删除,复制粘贴
- 移动光标:
hjkl
或箭头ctrl+f
或[pagedown]:下一页ctrl+b
或[pageup]:上一页0
或[home]:当行最前字符前$
或[end]:当行最后字符后gg
:回到首行n[enter]
:下移n行
- 查找替换
/word
:从光标向后搜索n
:正向执行上一个搜索动作N
:反向执行上一个搜索动作:n1,n2s/word1/word2/g
:在n1到n2行之间将word1替换为word2,其中可用$
代替n2作为最后一行:n1,n2s/word1/word2/gc
:在替换前询问
- 删除、复制、粘贴
x
:向前删除,X
:向前删除dd
:删除整行yy
:复制整行,nyy
:复制以下n行p
:在下一行粘贴u
:撤销一步.
:重复上一个动作
- 选择
v
:选择字符,变为反色ctrl+v
:选择矩形区域,变为反色y
:复制,d
:删除
- 移动光标:
- 编辑模式:
i
进入,esc
退出 - 命令模式:在一般模式下
:
、/
、?
进入,esc
退出w
:保存q
:退出!
:强制执行
- 一般模式:光标移动,删除,复制粘贴
- 多文档与多窗口切换
bash
- shell
- 变量:
- 设置变量:
name=xuhao
,echo $name
- 删除变量:
unset name
- 环境变量:
env
- 所有变量(环境变量+普通变量):
set
export
:自定义变量转环境变量
- 设置变量:
- shell编程:
- 待学习…
- 变量:
- 环境配置文件
/etc/profile
:系统整体设定(不建议修改)/etc/profile.d/*.sh
:其中的脚本会被/etc/profile
引入source
:使环境变量立刻生效
- 数据重定向
- 标准输入:代码0,使用
<
或<<
,<
为覆盖方式,<<
为累加方式 - 标准输出:代码1,使用
>
或>>
- 标准错误输出:代码2,使用
2>
或2>>
/dev/null
:垃圾桶黑洞装置tee 文件名
:双向重定向,既能重定向的同时,也能输出到屏幕
- 标准输入:代码0,使用
- 截取命令
cut
:grep '字符串'
:从文本中截取包含搜索字符串的行-n
:输出行号-v
:输出不包含搜索字符串的行
- 排序命令
sort
:按照行排序-r
:反向-f
:忽略大小写
uniq
:在排序后去重wc
:依次输出行、词数、字符数
- 字符串处理
tr
:删除,替换col
join
paste
expand
:tab转spacesplit
:分割
正则表达式
待学习…
解决方案
忘记root密码
使用单用户模式修改(单用户模式是root权限)
r/w/x对目录的作用:
- r:可以用ls列出内容
- w:可以修改目录名称,内部新建、删除文件
- x:可以cd进入
档案种类
-
:正规文档d
:目录l
:链接b/c/s/p
:设备文件,数据文件
$PATH环境变量
- 可用
echo $PATH
输出环境变量 - 不同用户有不同的环境变量
.
目录并不是环境变量中的目录,所以执行当前目录的文件需要用./filename
umask
- 与新建目录或文件时的默认权限有关
- 文件预设权限:666
- 目录预设权限:777
- 创建权限 = 预设权限 - umask
- 不同权限用户的umask不同,使用
umask
查看当前用户的umask - 文件默认
特殊权限
SUID
:SGID
:SBIT
: