home
目录
管理员用户 /root
普通用户 /home/用户
用户操作
用户添加
useradd 用户名
passwd 用户名
useradd 用户名 -p密码
切换用户
switch user
切换原则
1. 高权限向低权限切换不需要密码
2. 低权限向高权限或平级用户切换必须输入密码
su -
或 -login
一个完整的身份切换
- 用户切换
- 家目录跳转
- 不加 不跳转家目录
查看自身用户是
whoami
查看用户uid
,组gid
,组号groups
id
Terminal
操作
linux下默认一个用户有
6
个虚拟台
-
图形界面为默认
1
号虚拟台
ctrl + alt + F1
切换到1
号虚拟台 -
切换其他编号
2~6
虚拟台
ctrl + alt + F2~F6
命令行 切换 使用
chvt + 序号
who
查看当前用户几个控制台登陆
其中tty5
代表第5
个虚拟控制台(F5
)
重定向技术
-
more
,cat
,head
,tail
(也可字节)
1.more 文件
more
只输出一个屏的内容 ,有分屏显示功能
2.cat 文件
全部输出文件内容
3.head -m 文件
从头往后输出到 m 行
4.tail -m 文件
从末尾往前输出 m 行 -
输出重定向(输出转移)
箭头所指为输出对象
- 标准输出重定向
>
该重定向会 覆盖 原来操作
- 标准追加重定向
>>
该重定向会 添加 到 末尾操作
- 标准错误重定向
2>
2>>
将错误信息 覆盖 追加
- 标准全部重定向符
&>
&>>
在 一条命令结果中 有对有错时 ,需要此命令
不论对错,结果全部输出
- 标准输出重定向
-
输入重定向
<
find
find 父目录 -name -type -user
-
按文件名查找(在根目录下的所有子目录中查找)
find / -name "*abc"
-
按文件类型查找(
d,l,f
)
find / -type d
-
按用户所属
find / -user root
-
执行命令
-exec \;
只想前半段命令的运行结果
结束命令\;
例:find -filetype f -name "1*.txt" -exec mv {} hh \;
-
正则
regextype regex iregex
find /home/test/ -regextype "posix-egrep" -regex "/home/test/.*\.(sh|pl|py)$"
查找/home/test/目录下的所有
.sh, .pl, .py
结尾的文件(脚本)
mv移动命令
mv [options][FILE1] [FILE2]
mv 111.txt /root/222.txt
将111.txt 移动并重命名
mv 111.txt /root/
移动到目录下
mv -f 1.txt /home/
强制移动 , 直接覆盖
mv fff/ qqq/
移动整个目录到目录下
cp复制命令
cp 111.txt /root/222.txt
将111.txt 复制并重命名
cp 111.txt /root/
复制到目录下
\cp 111.txt /root/
不覆盖
-n
覆盖\cp
cp -r rt/ ch/
复制一个目录
-r
所有者的归属原则问题
当新创建一个对象
时,他的所有者 是由运行该条命令的当前用户决定的
grep
在内容中查找
grep key filename
Shell 常用通配符:
字符 | 含义 |
---|---|
ˆ | 开头 |
$ | 结尾 |
* | 匹配 0 或多个字符 |
? | 匹配任意一个字符 |
[list] | 匹配 list 中的任意单一字符 |
[!list] | 匹配 除list 中的任意单一字符以外的字符 |
[c1-c2] | 匹配 c1-c2 中的任意单一字符 如:[0-9] [a-z] |
{string1,string2,...} | 匹配 sring1 或 string2 (或更多)其一字符串 |
{c2..c2} | 匹配 c1-c2 中全部字符 如{1..10} |
注意 点的个数 一定要对