一、定位、查找文件的命令
命令 | 功能 | 命令 | 功能 |
which | 从path中找出文件的位置 | find | 找出所有符合要求的文件 |
whereis | 找出特定程序的路径 | locate | 从索引中找出文件位置 |
文件搜索
从/开始进入根文件系统搜索文件和目录
find / -name file1
搜索属于用户“user1”的文件和目录
find / -user user1
在目录“/home/user1”中搜索带有“.bin”结尾的文件
find /home/user1 -name \*.bin
显示一个二进制文件或可执行文件的完整路径
which halt
显示一个二进制文件,源码或man的位置
whereis halt
二、Linux信息查看
查看hosts
cat /etc/hosts
查看主机名
hostnamectl
修改主机名
vi /etc/sysconfig/network修改主机名,重启【已失效】
vi /etc/hostname
永久修改主机名
hostnamectl --static set-hostname 名称
查看ip
ip addr
查看当前所处路径
pwd
清屏
clear
新建文件夹
mkdir 文件夹名称
回退目录
cd .. 返回上一级目录
cd ../.. 返回上两级目录
cd或cd ~ 返回home目录
cd - 目录名 返回指定目录
cd / 返回根目录
三、Linux文件
linux中文件颜色,蓝色,白色等各自代表的含义
绿色文件---------- 可执行文件,可执行的程序
红色文件-----------压缩文件或者包文件
蓝色文件----------目录
白色文件----------一般性文件,如文本文件,配置文件,源码文件等
浅蓝色文件----------链接文件,主要是使用ln命令建立的文件
红色闪烁----------表示链接的文件有问题
黄色----------表示设备文件
灰色----------表示其他文件
打包和压缩文件
解压bz2
bunzip2 file1.bz2
压缩
bzip2 file1
解压gz
gunzip file1.gz
压缩
gzip file1
创建一个叫做file1.rar的包
rar a file1.rar test_file
同时压缩file1,file2,已经目录dir1
rar a file1.rar file1 file2 dir1
解压rar包
unrar e all.rar
创建一个zip格式的压缩包
zip file1.zip file1
将几个文件和目录同时压缩成一个zip格式的压缩包
zip -r file1.zip file1 file2 dir1
解压一个zip格式压缩包
unzip file1.zip
复制文件
cp file1 /home/B
cp -r 文件1 文件2/文件的重命名
重命名文件
将目录A重命名为B
mv A B
将/a目录移动到/b下,并重命名为c
mv /a /b/c
注:可以使用绝对路径
将文件剪切
mv 已存在文件1 已存在文件2
参数
-i 覆盖时提示
-f 不提示强制
-v 显示为剪切移动进度
删除
rm 文件名
rm -r 文件名【删除文件夹以及里面所有文件】
参数
-i 会提示
-f 强制删除不提示
-v 显示文件的删除进度
rmdir 文件夹
这个不允许删除包含文件的目录
比较文件内容
diff 文件1 文件2
显示文件
ls
ls -a 所有文件,包括隐藏文件
ls -l 列举目录的细节,包括权限,所属拥有着,组群,大小,创建日期,文件是否是到系统其他地方的链接,以及链接的指向
ls -F 文件类型,在文件后面有一个符号,/标明是一个目录,@表明是到其他文件的符号链接,以及链接指向
ls -r 从后向前列举目录内容
ls -R 递归的列举所有目录以及目录下的内容
ls -S 按文件大小排列
显示文件内容
cat命令:文本输出命令,通常查看某个文件内容
显示整个文件
cat head.txt
从键盘创建一个文件,只能创建新文件,不能编辑已有文件,以ctrl+d结束
cat > head.tst
将几个文件进行合并为一个文件
cat 【参数】 head.txt shuoming.txt > merge.txt
参数
-n 由1开始对所有输出的行数进行编号
-b 和-n一样,但是不对空白行编号
-s 遇到有连续两行以上的空白行,就代换为一行的空白行
创建文件并写入内容,EOF作为标准输入结束
cat > head.txt <<EOF
>1
>2
>3
>EOF [结束]
head 参数 文件名【head.txt】
参数
-q 隐藏文件名
-v 显示文件名
-c 数字 显示字节数
-n 数字 显示多少行
tail命令,与head相反,显示最后
tail -n 数字 head.txt
实时的把打开文件中的新消息显示到屏幕
tail -f /var/head.txt
文本处理
grep命令,查找指定的字符串在文件中
grep yun mege2.txt
在文件/file中查找关键词“Aug”
grep Aug /file
在文件/file中查找以“Aug”开始的词汇
grep ^Aug /file
选择/file文件中所有包含数字的行
grep [0-9] /file
将1.txt文件中string1替换成string2
sed 's/string1/string2/' 1.txt
从文档中只删除词汇string1并保留剩余全部
sed -e 's/string1//' 1.txt
文本编辑
vi/vim使用
命令模式,输入模式,底线命令模式
编辑文件
vi 文件 进入阅览状态,一般模式
w 下一单词的第一字符
e 下一单词的最后字符
b 上一单词的第一字符
( 到句首
) 到句尾
ctrl+F 上页
ctrl+B 下页
按i进行编辑
使用键盘上的Page Up和Page Down键可以上下翻页;
按下Insert键,可以见到窗口左下角有“Insert”字样,表示当前为插入编辑状态,这时从键盘输入的内容将插入到光标位置;
再按下Insert键,左下角将有“Replace”字样,表示当前为替换编辑状态,这时从键盘输入的内容将替换光标位置的内容。编辑完内容后,按下Esc键,并输入“:wq”,然后回车就可以保存退出。
按:(英文冒号)就进入了底线命令模式
底线命令模式可以输入单个或多个字符的命令,可用命令非常多
基本命令
q,退出程序
w,保存文件
在内容前面加2个dd是会删除当前行和后一行
x:删除当前字符
dd:删除当前行
u:恢复前一步操作
p:复制之前删除的行
复制游标所在行到最后一行的所有数据
yG
复制游标所在行到第一行所有数据
y1G
复制光标所在字符到该行行首所在数据
y0
复制光标所在字符到该行行尾
y$
四、Linux权限
1、chmod命令
用于改变文件或目录的访问权限
ls -l head.txt
- rw- rw- r-- qspase users 12 Jul 15 12:04 head.txt 权限总共10位
类型 所有者权限 组群权限 其他人权限 所有者【创建文件夹的】 组群 大小 时间
4+2+0 4+2+0 4+0+0
类型
d 表示目录
- 常规文件
l 到系统其他位置的另一个程序或者文件的符号链接
权限x标识可执行
通过身份,权限,动作来赋予或者删除权限
身份
u【文件所有者】
g【组群】
o【其他人】
a【u,g,o全部人】
权限
r【读,数字代表4】
w【写,2】 x【执行,1】
-【无权限,0】
动作
+【添加权限】
-【删除权限】
=【使他成为唯一权限】
chmod g+r head.txt
chmod 644 head.txt
2、chown
修改文件夹用户及用户组
chown jay:fefjay my #修改文件所属用户为jay,所属用户组为fefjay,只修改文件夹,不涉及子目录
chown -R jay:fefjay my #修改文件所属用户为jay,所属用户组为fefjay,修改文件夹及子目录
修改文件用户及用户组
chown -R jay:fefjay my #修改文件所属用户为jay,所属用户组为fefjay
五、资源
centos7修改硬件,系统时间,参考:CentOS7--配置时间和日期 - 头痛不头痛 - 博客园
cpu
总核数=物理cpu个数*每颗物理cpu的核数
总逻辑cpu数=物理cpu个数*每颗物理cpu核数*超线程数
sort排序 uniq去除重复行
查看物理cpu个数 wc -l 统计行数
cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l
查看每个物理cpu中的core个数
cat /proc/cpuinfo| grep "cpu cores"| uniq
查看逻辑cpu个数
cat /proc/cpuinfo| grep "processor"| wc -l
cat /proc/cpuinfo
参数解释如下:
processor :系统中逻辑处理核的编号
vendor_id :CPU制造商
cpu family :CPU产品系列代号
model :CPU属于其系列中的哪一代的代号
model name :CPU属于的名字及其编号、标称主频
stepping :CPU属于制作更新版本
cpu MHz :CPU的实际使用主频
cache size :CPU二级缓存大小
physical id :单个CPU的标号
siblings :单个CPU逻辑物理核数
core id :当前物理核在其所处CPU中的编号,这个编号不一定连续
cpu cores :该逻辑核所处CPU的物理核数
fpu :是否具有浮点运算单元(Floating Point Unit)
fpu_exception :是否支持浮点计算异常
cpuid level :执行cpuid指令前,eax寄存器中的值,根据不同的值cpuid指令会返回不同的内容
wp :表明当前CPU是否在内核态支持对用户空间的写保护(Write Protection)
flags :当前CPU支持的功能
bogomips :在系统内核启动时粗略测算的CPU速度(Million Instructions Per Second)
clflush size :每次刷新缓存的大小单位
cache_alignment :缓存地址对齐单位
硬盘,磁盘空间,显示已经挂载的分区列表
磁盘使用
df -lh
估算目录“dir1”已经使用的磁盘空间
du -sh dir1
全部的文件系统使用情况
df -a
查看系统拥有几块盘符
df -h
网络
ifconfig 查看主机ip地址和网卡信息
ping 测试网络连通性
netstat 显示连接信息,路由表
netstat -tln 查看linux端口使用情况
ethtool 查看网络模式和网络速度
route 查看路由表
hostname 查看主机名
traceroute 路由跟踪命令
dig 查询dns相关信息记录
route 查看路由表
进程
查看端口占用
ps 端口号
netstat -anp|grep 80
查询进程
ps aux | grep 文件/服务
快照显示
显示所有运行中的进程
ps aux | less
显示所有进程
ps -A
显示进程树状图
pstree
查找进程
pgrep 进程名称
实时显示进程
top
按q退出,按h进入帮助
杀进程
kill 进程id
kill -9 程序名字
cal显示月历
su获取root权限
useradd建立用户账号
userdel删除用户账号及相关文件
who查看当前计算机有哪些哟过户登陆
whoami查看当前用户登录名
挂载一个文件系统
挂在一个叫做hda2的盘-确定目录“/mnt/hda2”已经存在
mount /dev/hda2 /mnt/hda2
卸载一个叫做hda2的盘-先从挂载点“/mnt/hda2”退出
umount /dev/hda2
五、用户和群组
创建一个新用户组
groupadd group_name
删除一个用户组
groupdel group_name
创建一个属于“admin”用户组的用户
useradd -c "Name Surname" -g admin -d /home/user1 -s /bin/bash user1
创建一个新用户
useradd user1
删除一个用户
userdel -r user1
修改一个用户的口令(只允许root执行)
passwd user1
列出所有用户以及密码--------cat /etc/passwd
查找某个用户---------cat /etc/passwd | grep 用户名
列出所有用户组--------cat /etc/group
查找某个组---------cat /etc/group | grep 组名
groups 查看当前登录用户的组内成员
groups test 查看test用户所在的组,以及组内成员
whoami 查看当前登录用户名